From 3673235beb74431d2eef70dedecf182d1f249547 Mon Sep 17 00:00:00 2001 From: Andrew Golovashevich Date: Fri, 31 Jan 2025 20:47:28 +0300 Subject: [PATCH] Reference to owner table in 'CheckConstraint' and 'DefaultConstraint' --- .../db/serdha0/api/table/CheckConstraint.kt | 34 ++++++++++--------- .../db/serdha0/api/table/DefaultConstraint.kt | 34 ++++++++++--------- 2 files changed, 36 insertions(+), 32 deletions(-) diff --git a/src/commonMain/kotlin/ru/landgrafhomyak/db/serdha0/api/table/CheckConstraint.kt b/src/commonMain/kotlin/ru/landgrafhomyak/db/serdha0/api/table/CheckConstraint.kt index c91f66c..35e918b 100644 --- a/src/commonMain/kotlin/ru/landgrafhomyak/db/serdha0/api/table/CheckConstraint.kt +++ b/src/commonMain/kotlin/ru/landgrafhomyak/db/serdha0/api/table/CheckConstraint.kt @@ -7,32 +7,34 @@ import ru.landgrafhomyak.db.serdha0.api.misc.IntermediateColumn import ru.landgrafhomyak.db.serdha0.api.misc.DatabaseType import ru.landgrafhomyak.db.serdha0.api.misc.Expression -public interface CheckConstraint { +public interface CheckConstraint { @Suppress("INAPPLICABLE_JVM_NAME") @get:JvmName("name") public val name: String @Suppress("INAPPLICABLE_JVM_NAME") @get:JvmName("table") - public val table: Table + public val table: Table - public interface Creator { - public fun createCheckConstraint(scope: Scope) + public interface Creator { + public fun createCheckConstraint(scope: Scope) - public interface Scope { - public var result: IntermediateColumn - public fun > selectFromTargetTable(column: Column): IntermediateColumn + public interface Scope { + public val tt: Table - public fun > followReference( - ref: IntermediateColumn<*, DatabaseType.ROW_ID, ConstraintUserExtension>, - column: Column - ): IntermediateColumn + public var result: IntermediateColumn + public fun > selectFromTargetTable(column: Column): IntermediateColumn - public val builtinExpressions: BuiltinExpressionsProvider - public fun mapColumns( - expression: Expression, - input: Expression.InputLinker, - output: Expression.OutputLinker + public fun > followReference( + ref: IntermediateColumn<*, DatabaseType.ROW_ID, cUE>, + column: Column + ): IntermediateColumn + + public val builtinExpressions: BuiltinExpressionsProvider + public fun mapColumns( + expression: Expression, + input: Expression.InputLinker, + output: Expression.OutputLinker ) } } diff --git a/src/commonMain/kotlin/ru/landgrafhomyak/db/serdha0/api/table/DefaultConstraint.kt b/src/commonMain/kotlin/ru/landgrafhomyak/db/serdha0/api/table/DefaultConstraint.kt index 905f00e..64533e8 100644 --- a/src/commonMain/kotlin/ru/landgrafhomyak/db/serdha0/api/table/DefaultConstraint.kt +++ b/src/commonMain/kotlin/ru/landgrafhomyak/db/serdha0/api/table/DefaultConstraint.kt @@ -7,32 +7,34 @@ import ru.landgrafhomyak.db.serdha0.api.misc.IntermediateColumn import ru.landgrafhomyak.db.serdha0.api.misc.DatabaseType import ru.landgrafhomyak.db.serdha0.api.misc.Expression -public interface DefaultConstraint { +public interface DefaultConstraint { @Suppress("INAPPLICABLE_JVM_NAME") @get:JvmName("name") public val name: String @Suppress("INAPPLICABLE_JVM_NAME") @get:JvmName("table") - public val table: Table + public val table: Table - public interface Creator, TargetTableUserExtension : Any> { - public fun createCheckConstraint(scope: Scope) + public interface Creator, ttUE : Any> { + public fun createCheckConstraint(scope: Scope) - public interface Scope, TargetTableUserExtension : Any> { - public var result: IntermediateColumn - public fun > selectFromTargetTable(column: Column): IntermediateColumn + public interface Scope, ttUE : Any> { + public val tt: Table - public fun > followReference( - ref: IntermediateColumn<*, DatabaseType.ROW_ID, ConstraintUserExtension>, - column: Column - ): IntermediateColumn + public var result: IntermediateColumn + public fun > selectFromTargetTable(column: Column): IntermediateColumn - public val builtinExpressions: BuiltinExpressionsProvider - public fun mapColumns( - expression: Expression, - input: Expression.InputLinker, - output: Expression.OutputLinker + public fun > followReference( + ref: IntermediateColumn<*, DatabaseType.ROW_ID, cUE>, + column: Column + ): IntermediateColumn + + public val builtinExpressions: BuiltinExpressionsProvider + public fun mapColumns( + expression: Expression, + input: Expression.InputLinker, + output: Expression.OutputLinker ) } }