org.jetbrains.kotlinx.ggdsl.ir.bindings.setting.kt Maven / Gradle / Ivy
/*
* Copyright 2020-2022 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
*/
package org.jetbrains.kotlinx.ggdsl.ir.bindings
import kotlinx.serialization.Serializable
import org.jetbrains.kotlinx.ggdsl.ir.aes.AesName
import org.jetbrains.kotlinx.ggdsl.util.serialization.TypedValue
/**
* Setting base interface.
*/
public sealed interface Setting
/**
* Setting of a non-positional aesthetic attribute.
*
* @param T the type specifying a non-positional attribute
* @property aes the non-positional aesthetic attribute to be set to
* @property value the assigned value
*/
@Serializable
public data class NonPositionalSetting(
val aes: AesName,
val value: TypedValue,
) : Setting
/**
* Setting of a positional aesthetic attribute.
*
* @param T the type of set value.
* @property aes the positional aesthetic attribute to be set to
* @property value the assigned value
*/
@Serializable
public data class PositionalSetting(
val aes: AesName,
val value: TypedValue,
) : Setting
© 2015 - 2025 Weber Informatics LLC | Privacy Policy