diff --git a/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/ddl/module/CreateModuleScope.kt b/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/ddl/module/CreateModuleScope.kt index 324b2f2..c3b578c 100644 --- a/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/ddl/module/CreateModuleScope.kt +++ b/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/ddl/module/CreateModuleScope.kt @@ -42,7 +42,7 @@ public interface CreateModuleScope { * @see CreateModuleScope.createTransactionScopeTemporaryTable * @see UpgradeModuleScope.TableUpgrade */ - public fun createTable(creator: ru.landgrafhomyak.serdha.api.v0.ddl.table.TableCreator): TableUserExtension + public fun createTable(creator: ru.landgrafhomyak.serdha.api.v0.ddl.table.CreateTableScope): TableUserExtension } /** diff --git a/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/ddl/module/UpgradeModuleScope.kt b/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/ddl/module/UpgradeModuleScope.kt index f5e02b5..838ce61 100644 --- a/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/ddl/module/UpgradeModuleScope.kt +++ b/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/ddl/module/UpgradeModuleScope.kt @@ -1,7 +1,7 @@ package ru.landgrafhomyak.serdha.api.v0.ddl.module import ru.landgrafhomyak.serdha.api.v0.ddl.table.Table -import ru.landgrafhomyak.serdha.api.v0.ddl.table.TableUpdater +import ru.landgrafhomyak.serdha.api.v0.ddl.table.UpdateTableScope /** * Scope methods for upgrading [module template][ModuleTemplate]. @@ -36,7 +36,7 @@ public interface UpgradeModuleScope : CreateModuleScope { * @see UpgradeModuleScope.upgradeAndRenameTable * @see UpgradeModuleScope.CreateTable */ - public fun upgradeTable(oldTable: Table, upgrader: TableUpdater): TableNewUserExtension + public fun upgradeTable(oldTable: Table, upgrader: UpdateTableScope): TableNewUserExtension } diff --git a/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/ddl/table/TableCreator.kt b/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/ddl/table/CreateTableScope.kt similarity index 75% rename from src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/ddl/table/TableCreator.kt rename to src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/ddl/table/CreateTableScope.kt index 57d4f2b..3dc898b 100644 --- a/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/ddl/table/TableCreator.kt +++ b/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/ddl/table/CreateTableScope.kt @@ -5,18 +5,18 @@ import ru.landgrafhomyak.serdha.api.v0.ddl.types.DatabaseType import ru.landgrafhomyak.serdha.api.v0.ddl.types.DatabaseTypesProvider import ru.landgrafhomyak.serdha.api.v0.ddl.types.RowId -public interface TableCreator { +public interface CreateTableScope { public val expressionBuilder: Expression.Builder public val types: DatabaseTypesProvider - public fun > column(name: String, type: DatabaseType): Column + public fun > column(name: String, type: DT): Column public fun index(name: String, vararg columns: Column<*, *, TableUserExtension>): Index public fun uniqueIndex(name: String, distinctNulls: Boolean, vararg columns: Column<*, *, TableUserExtension>): UniqueIndex public fun checkConstraint(name: String, constraint: Expression): CheckConstraint - public fun > defaultValue(c: Column, expr: Expression): DefaultConstraint + public fun > defaultValue(c: Column, expr: Expression): DefaultConstraint @Suppress("PropertyName") public val rowId_column: Column, DatabaseType>, TableUserExtension> diff --git a/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/ddl/table/TableUpdater.kt b/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/ddl/table/UpdateTableScope.kt similarity index 74% rename from src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/ddl/table/TableUpdater.kt rename to src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/ddl/table/UpdateTableScope.kt index f971321..3933e51 100644 --- a/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/ddl/table/TableUpdater.kt +++ b/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/ddl/table/UpdateTableScope.kt @@ -4,15 +4,12 @@ import ru.landgrafhomyak.serdha.api.v0.Expression import ru.landgrafhomyak.serdha.api.v0.ddl.types.DatabaseType -public interface TableUpdater : TableCreator { +public interface UpdateTableScope : CreateTableScope { public val oldExpressionBuilder: Expression.Builder public fun > keepColumn(c: Column): Column + public fun > keepColumnUntilUpgrading(c: Column): Column public fun > renameAndKeepColumn(c: Column, newName: String): Column - public fun > mapAndKeepColumn(c: Column<*, *, TableOldUserExtension>, newValue: Expression, where: Expression?): Column - public fun > mapAndKeepColumn(c: Column<*, *, TableOldUserExtension>, newValue: Expression): Column = this.mapAndKeepColumn(c, newValue, null) - public fun > mapAndRenameAndKeepColumn(c: Column<*, *, TableOldUserExtension>, newName: String, newValue: Expression, where: Expression?): Column - public fun > mapAndRenameAndKeepColumn(c: Column<*, *, TableOldUserExtension>, newName: String, newValue: Expression): Column = this.mapAndRenameAndKeepColumn(c, newName, newValue, null) public fun deleteColumn(c: Column<*, *, TableOldUserExtension>) public fun keepIndex(i: Index): Index @@ -47,7 +44,6 @@ public interface TableUpdater - public fun renameAndKeepForeignRowReferenceToUpdatedTable( frr: ForeignRowReference, updatedTable: Table,