All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.jetbrains.kotlinx.ggdsl.ir.scale.FreeScale.kt Maven / Gradle / Ivy

There is a newer version: 0.4.0-dev-15
Show newest version
/*
* 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.scale

import kotlinx.serialization.Serializable
import org.jetbrains.kotlinx.ggdsl.ir.aes.AesName
import kotlin.reflect.KType

/**
 * TODO: will be redesigned in the near future.
 * Free scale, i.e scale without a mapping.
 */
public sealed interface FreeScale {
    public val aes: AesName
    public val scale: Scale
    public val domainType: KType
    public var scaleParameters: ScaleParameters?
}

/**
 * TODO: will be redesigned in the near future.
 * Free positional scale, i.e scale without a mapping.
 */
@Serializable
public data class FreePositionalScale(
    override val aes: AesName,
    override val scale: Scale,
    override val domainType: KType,
) : FreeScale {
    override var scaleParameters: ScaleParameters? = null
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy