diff --git a/src/commonMain/kotlin/ru/landgrafhomyak/db/serdha0/user_commons/construction/table_inline_constructors.kt b/src/commonMain/kotlin/ru/landgrafhomyak/db/serdha0/user_commons/construction/table_inline_constructors.kt new file mode 100644 index 0000000..74b4785 --- /dev/null +++ b/src/commonMain/kotlin/ru/landgrafhomyak/db/serdha0/user_commons/construction/table_inline_constructors.kt @@ -0,0 +1,503 @@ +@file:JvmName("_TableInlineConstructorsKt") + +package ru.landgrafhomyak.db.serdha0.user_commons.construction + +import kotlin.jvm.JvmName +import ru.landgrafhomyak.db.serdha0.api.module.CreateModuleScope +import ru.landgrafhomyak.db.serdha0.api.module.Module +import ru.landgrafhomyak.db.serdha0.api.module.Namespace +import ru.landgrafhomyak.db.serdha0.api.table.Table +import ru.landgrafhomyak.db.serdha0.api.table.TableConstructor + + +public open class InlineTableConstructor0( + private val constructor: (TableConstructor.Scope) -> tUE +) : TableConstructor { + override fun createTable(context: TableConstructor.Scope): tUE { + return this.constructor(context) + } +} + +public fun CreateModuleScope.createTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope) -> tUE +): Table = + this.createTable(namespace, name, InlineTableConstructor0(constructor)) + +public fun CreateModuleScope.createSessionScopeTemporaryTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope) -> tUE +): Table = + this.createSessionScopeTemporaryTable(namespace, name, InlineTableConstructor0(constructor)) + +public fun CreateModuleScope.createTransactionScopeTemporaryTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope) -> tUE +): Table = + this.createTransactionScopeTemporaryTable(namespace, name, InlineTableConstructor0(constructor)) + +public fun CreateModuleScope.createModuleConfiguringScopeTemporaryTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope) -> tUE +): Table = + this.createModuleConfiguringScopeTemporaryTable(namespace, name, InlineTableConstructor0(constructor)) + + +public fun Module<*>.createSessionScopeTemporaryTable( + name: String, constructor: (TableConstructor.Scope) -> tUE +): Table = + this.createSessionScopeTemporaryTable(name, InlineTableConstructor0(constructor)) + +public fun Module<*>.createTransactionScopeTemporaryTable( + name: String, constructor: (TableConstructor.Scope) -> tUE +): Table = + this.createTransactionScopeTemporaryTable(name, InlineTableConstructor0(constructor)) + +public open class InlineTableConstructor1( + private val constructor: (TableConstructor.Scope, A1) -> tUE, + private val a1: A1 +) : TableConstructor { + override fun createTable(context: TableConstructor.Scope): tUE { + return this.constructor(context, this.a1) + } +} + +public fun CreateModuleScope.createTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1) -> tUE, + a1: A1 +): Table = + this.createTable(namespace, name, InlineTableConstructor1(constructor, a1)) + +public fun CreateModuleScope.createSessionScopeTemporaryTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1) -> tUE, + a1: A1 +): Table = + this.createSessionScopeTemporaryTable(namespace, name, InlineTableConstructor1(constructor, a1)) + +public fun CreateModuleScope.createTransactionScopeTemporaryTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1) -> tUE, + a1: A1 +): Table = + this.createTransactionScopeTemporaryTable(namespace, name, InlineTableConstructor1(constructor, a1)) + +public fun CreateModuleScope.createModuleConfiguringScopeTemporaryTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1) -> tUE, + a1: A1 +): Table = + this.createModuleConfiguringScopeTemporaryTable(namespace, name, InlineTableConstructor1(constructor, a1)) + +public fun Module<*>.createSessionScopeTemporaryTable( + name: String, constructor: (TableConstructor.Scope, A1) -> tUE, + a1: A1 +): Table = + this.createSessionScopeTemporaryTable(name, InlineTableConstructor1(constructor, a1)) + +public fun Module<*>.createTransactionScopeTemporaryTable( + name: String, constructor: (TableConstructor.Scope, A1) -> tUE, + a1: A1 +): Table = + this.createTransactionScopeTemporaryTable(name, InlineTableConstructor1(constructor, a1)) + +public open class InlineTableConstructor2( + private val constructor: (TableConstructor.Scope, A1, A2) -> tUE, + private val a1: A1, private val a2: A2, +) : TableConstructor { + override fun createTable(context: TableConstructor.Scope): tUE { + return this.constructor(context, this.a1, this.a2) + } +} + +public fun CreateModuleScope.createTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1, A2) -> tUE, + a1: A1, a2: A2 +): Table = + this.createTable(namespace, name, InlineTableConstructor2(constructor, a1, a2)) + +public fun CreateModuleScope.createSessionScopeTemporaryTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1, A2) -> tUE, + a1: A1, a2: A2 +): Table = + this.createSessionScopeTemporaryTable(namespace, name, InlineTableConstructor2(constructor, a1, a2)) + +public fun CreateModuleScope.createTransactionScopeTemporaryTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1, A2) -> tUE, + a1: A1, a2: A2 +): Table = + this.createTransactionScopeTemporaryTable(namespace, name, InlineTableConstructor2(constructor, a1, a2)) + +public fun CreateModuleScope.createModuleConfiguringScopeTemporaryTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1, A2) -> tUE, + a1: A1, a2: A2 +): Table = + this.createModuleConfiguringScopeTemporaryTable(namespace, name, InlineTableConstructor2(constructor, a1, a2)) + +public fun Module<*>.createSessionScopeTemporaryTable( + name: String, constructor: (TableConstructor.Scope, A1, A2) -> tUE, + a1: A1, a2: A2 +): Table = + this.createSessionScopeTemporaryTable(name, InlineTableConstructor2(constructor, a1, a2)) + +public fun Module<*>.createTransactionScopeTemporaryTable( + name: String, constructor: (TableConstructor.Scope, A1, A2) -> tUE, + a1: A1, a2: A2 +): Table = + this.createTransactionScopeTemporaryTable(name, InlineTableConstructor2(constructor, a1, a2)) + +public open class InlineTableConstructor3( + private val constructor: (TableConstructor.Scope, A1, A2, A3) -> tUE, + private val a1: A1, private val a2: A2, private val a3: A3, +) : TableConstructor { + override fun createTable(context: TableConstructor.Scope): tUE { + return this.constructor(context, this.a1, this.a2, this.a3) + } +} + +public fun CreateModuleScope.createTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1, A2, A3) -> tUE, + a1: A1, a2: A2, a3: A3 +): Table = + this.createTable(namespace, name, InlineTableConstructor3(constructor, a1, a2, a3)) + +public fun CreateModuleScope.createSessionScopeTemporaryTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1, A2, A3) -> tUE, + a1: A1, a2: A2, a3: A3 +): Table = + this.createSessionScopeTemporaryTable(namespace, name, InlineTableConstructor3(constructor, a1, a2, a3)) + +public fun CreateModuleScope.createTransactionScopeTemporaryTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1, A2, A3) -> tUE, + a1: A1, a2: A2, a3: A3 +): Table = + this.createTransactionScopeTemporaryTable(namespace, name, InlineTableConstructor3(constructor, a1, a2, a3)) + +public fun CreateModuleScope.createModuleConfiguringScopeTemporaryTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1, A2, A3) -> tUE, + a1: A1, a2: A2, a3: A3 +): Table = + this.createModuleConfiguringScopeTemporaryTable(namespace, name, InlineTableConstructor3(constructor, a1, a2, a3)) + +public fun Module<*>.createSessionScopeTemporaryTable( + name: String, constructor: (TableConstructor.Scope, A1, A2, A3) -> tUE, + a1: A1, a2: A2, a3: A3 +): Table = + this.createSessionScopeTemporaryTable(name, InlineTableConstructor3(constructor, a1, a2, a3)) + +public fun Module<*>.createTransactionScopeTemporaryTable( + name: String, constructor: (TableConstructor.Scope, A1, A2, A3) -> tUE, + a1: A1, a2: A2, a3: A3 +): Table = + this.createTransactionScopeTemporaryTable(name, InlineTableConstructor3(constructor, a1, a2, a3)) + +public open class InlineTableConstructor4( + private val constructor: (TableConstructor.Scope, A1, A2, A3, A4) -> tUE, + private val a1: A1, private val a2: A2, private val a3: A3, private val a4: A4 +) : TableConstructor { + override fun createTable(context: TableConstructor.Scope): tUE { + return this.constructor(context, this.a1, this.a2, this.a3, this.a4) + } +} + +public fun CreateModuleScope.createTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4 +): Table = + this.createTable(namespace, name, InlineTableConstructor4(constructor, a1, a2, a3, a4)) + +public fun CreateModuleScope.createSessionScopeTemporaryTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4 +): Table = + this.createSessionScopeTemporaryTable(namespace, name, InlineTableConstructor4(constructor, a1, a2, a3, a4)) + +public fun CreateModuleScope.createTransactionScopeTemporaryTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4 +): Table = + this.createTransactionScopeTemporaryTable(namespace, name, InlineTableConstructor4(constructor, a1, a2, a3, a4)) + +public fun CreateModuleScope.createModuleConfiguringScopeTemporaryTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4 +): Table = + this.createModuleConfiguringScopeTemporaryTable(namespace, name, InlineTableConstructor4(constructor, a1, a2, a3, a4)) + +public fun Module<*>.createSessionScopeTemporaryTable( + name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4 +): Table = + this.createSessionScopeTemporaryTable(name, InlineTableConstructor4(constructor, a1, a2, a3, a4)) + +public fun Module<*>.createTransactionScopeTemporaryTable( + name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4 +): Table = + this.createTransactionScopeTemporaryTable(name, InlineTableConstructor4(constructor, a1, a2, a3, a4)) + + +public open class InlineTableConstructor5( + private val constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5) -> tUE, + private val a1: A1, private val a2: A2, private val a3: A3, private val a4: A4, private val a5: A5 +) : TableConstructor { + override fun createTable(context: TableConstructor.Scope): tUE { + return this.constructor(context, this.a1, this.a2, this.a3, this.a4, this.a5) + } +} + +public fun CreateModuleScope.createTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4, a5: A5 +): Table = + this.createTable(namespace, name, InlineTableConstructor5(constructor, a1, a2, a3, a4, a5)) + +public fun CreateModuleScope.createSessionScopeTemporaryTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4, a5: A5 +): Table = + this.createSessionScopeTemporaryTable(namespace, name, InlineTableConstructor5(constructor, a1, a2, a3, a4, a5)) + +public fun CreateModuleScope.createTransactionScopeTemporaryTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4, a5: A5 +): Table = + this.createTransactionScopeTemporaryTable(namespace, name, InlineTableConstructor5(constructor, a1, a2, a3, a4, a5)) + +public fun CreateModuleScope.createModuleConfiguringScopeTemporaryTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4, a5: A5 +): Table = + this.createModuleConfiguringScopeTemporaryTable(namespace, name, InlineTableConstructor5(constructor, a1, a2, a3, a4, a5)) + +public fun Module<*>.createSessionScopeTemporaryTable( + name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4, a5: A5 +): Table = + this.createSessionScopeTemporaryTable(name, InlineTableConstructor5(constructor, a1, a2, a3, a4, a5)) + +public fun Module<*>.createTransactionScopeTemporaryTable( + name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4, a5: A5 +): Table = + this.createTransactionScopeTemporaryTable(name, InlineTableConstructor5(constructor, a1, a2, a3, a4, a5)) + + +public open class InlineTableConstructor6( + private val constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5, A6) -> tUE, + private val a1: A1, private val a2: A2, private val a3: A3, private val a4: A4, private val a5: A5, private val a6: A6 +) : TableConstructor { + override fun createTable(context: TableConstructor.Scope): tUE { + return this.constructor(context, this.a1, this.a2, this.a3, this.a4, this.a5, this.a6) + } +} + +public fun CreateModuleScope.createTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5, A6) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4, a5: A5, a6: A6 +): Table = + this.createTable(namespace, name, InlineTableConstructor6(constructor, a1, a2, a3, a4, a5, a6)) + +public fun CreateModuleScope.createSessionScopeTemporaryTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5, A6) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4, a5: A5, a6: A6 +): Table = + this.createSessionScopeTemporaryTable(namespace, name, InlineTableConstructor6(constructor, a1, a2, a3, a4, a5, a6)) + +public fun CreateModuleScope.createTransactionScopeTemporaryTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5, A6) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4, a5: A5, a6: A6 +): Table = + this.createTransactionScopeTemporaryTable(namespace, name, InlineTableConstructor6(constructor, a1, a2, a3, a4, a5, a6)) + +public fun CreateModuleScope.createModuleConfiguringScopeTemporaryTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5, A6) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4, a5: A5, a6: A6 +): Table = + this.createModuleConfiguringScopeTemporaryTable(namespace, name, InlineTableConstructor6(constructor, a1, a2, a3, a4, a5, a6)) + +public fun Module<*>.createSessionScopeTemporaryTable( + name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5, A6) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4, a5: A5, a6: A6 +): Table = + this.createSessionScopeTemporaryTable(name, InlineTableConstructor6(constructor, a1, a2, a3, a4, a5, a6)) + +public fun Module<*>.createTransactionScopeTemporaryTable( + name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5, A6) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4, a5: A5, a6: A6 +): Table = + this.createTransactionScopeTemporaryTable(name, InlineTableConstructor6(constructor, a1, a2, a3, a4, a5, a6)) + +public open class InlineTableConstructor7( + private val constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5, A6, A7) -> tUE, + private val a1: A1, private val a2: A2, private val a3: A3, private val a4: A4, private val a5: A5, private val a6: A6, private val a7: A7 +) : TableConstructor { + override fun createTable(context: TableConstructor.Scope): tUE { + return this.constructor(context, this.a1, this.a2, this.a3, this.a4, this.a5, this.a6, this.a7) + } +} + +public fun CreateModuleScope.createTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5, A6, A7) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4, a5: A5, a6: A6, a7: A7 +): Table = + this.createTable(namespace, name, InlineTableConstructor7(constructor, a1, a2, a3, a4, a5, a6, a7)) + +public fun CreateModuleScope.createSessionScopeTemporaryTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5, A6, A7) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4, a5: A5, a6: A6, a7: A7 +): Table = + this.createSessionScopeTemporaryTable(namespace, name, InlineTableConstructor7(constructor, a1, a2, a3, a4, a5, a6, a7)) + +public fun CreateModuleScope.createTransactionScopeTemporaryTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5, A6, A7) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4, a5: A5, a6: A6, a7: A7 +): Table = + this.createTransactionScopeTemporaryTable(namespace, name, InlineTableConstructor7(constructor, a1, a2, a3, a4, a5, a6, a7)) + +public fun CreateModuleScope.createModuleConfiguringScopeTemporaryTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5, A6, A7) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4, a5: A5, a6: A6, a7: A7 +): Table = + this.createModuleConfiguringScopeTemporaryTable(namespace, name, InlineTableConstructor7(constructor, a1, a2, a3, a4, a5, a6, a7)) + +public fun Module<*>.createSessionScopeTemporaryTable( + name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5, A6, A7) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4, a5: A5, a6: A6, a7: A7 +): Table = + this.createSessionScopeTemporaryTable(name, InlineTableConstructor7(constructor, a1, a2, a3, a4, a5, a6, a7)) + +public fun Module<*>.createTransactionScopeTemporaryTable( + name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5, A6, A7) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4, a5: A5, a6: A6, a7: A7 +): Table = + this.createTransactionScopeTemporaryTable(name, InlineTableConstructor7(constructor, a1, a2, a3, a4, a5, a6, a7)) + + +public open class InlineTableConstructor8( + private val constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5, A6, A7, A8) -> tUE, + private val a1: A1, private val a2: A2, private val a3: A3, private val a4: A4, private val a5: A5, private val a6: A6, private val a7: A7, private val a8: A8 +) : TableConstructor { + override fun createTable(context: TableConstructor.Scope): tUE { + return this.constructor(context, this.a1, this.a2, this.a3, this.a4, this.a5, this.a6, this.a7, this.a8) + } +} + +public fun CreateModuleScope.createTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5, A6, A7, A8) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4, a5: A5, a6: A6, a7: A7, a8: A8 +): Table = + this.createTable(namespace, name, InlineTableConstructor8(constructor, a1, a2, a3, a4, a5, a6, a7, a8)) + +public fun CreateModuleScope.createSessionScopeTemporaryTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5, A6, A7, A8) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4, a5: A5, a6: A6, a7: A7, a8: A8 +): Table = + this.createSessionScopeTemporaryTable(namespace, name, InlineTableConstructor8(constructor, a1, a2, a3, a4, a5, a6, a7, a8)) + +public fun CreateModuleScope.createTransactionScopeTemporaryTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5, A6, A7, A8) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4, a5: A5, a6: A6, a7: A7, a8: A8 +): Table = + this.createTransactionScopeTemporaryTable(namespace, name, InlineTableConstructor8(constructor, a1, a2, a3, a4, a5, a6, a7, a8)) + +public fun CreateModuleScope.createModuleConfiguringScopeTemporaryTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5, A6, A7, A8) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4, a5: A5, a6: A6, a7: A7, a8: A8 +): Table = + this.createModuleConfiguringScopeTemporaryTable(namespace, name, InlineTableConstructor8(constructor, a1, a2, a3, a4, a5, a6, a7, a8)) + +public fun Module<*>.createSessionScopeTemporaryTable( + name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5, A6, A7, A8) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4, a5: A5, a6: A6, a7: A7, a8: A8 +): Table = + this.createSessionScopeTemporaryTable(name, InlineTableConstructor8(constructor, a1, a2, a3, a4, a5, a6, a7, a8)) + +public fun Module<*>.createTransactionScopeTemporaryTable( + name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5, A6, A7, A8) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4, a5: A5, a6: A6, a7: A7, a8: A8 +): Table = + this.createTransactionScopeTemporaryTable(name, InlineTableConstructor8(constructor, a1, a2, a3, a4, a5, a6, a7, a8)) + +public open class InlineTableConstructor9( + private val constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5, A6, A7, A8, A9) -> tUE, + private val a1: A1, private val a2: A2, private val a3: A3, private val a4: A4, private val a5: A5, private val a6: A6, private val a7: A7, private val a8: A8, private val a9: A9 +) : TableConstructor { + override fun createTable(context: TableConstructor.Scope): tUE { + return this.constructor(context, this.a1, this.a2, this.a3, this.a4, this.a5, this.a6, this.a7, this.a8, this.a9) + } +} + +public fun CreateModuleScope.createTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5, A6, A7, A8, A9) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4, a5: A5, a6: A6, a7: A7, a8: A8, a9: A9 +): Table = + this.createTable(namespace, name, InlineTableConstructor9(constructor, a1, a2, a3, a4, a5, a6, a7, a8, a9)) + +public fun CreateModuleScope.createSessionScopeTemporaryTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5, A6, A7, A8, A9) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4, a5: A5, a6: A6, a7: A7, a8: A8, a9: A9 +): Table = + this.createSessionScopeTemporaryTable(namespace, name, InlineTableConstructor9(constructor, a1, a2, a3, a4, a5, a6, a7, a8, a9)) + +public fun CreateModuleScope.createTransactionScopeTemporaryTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5, A6, A7, A8, A9) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4, a5: A5, a6: A6, a7: A7, a8: A8, a9: A9 +): Table = + this.createTransactionScopeTemporaryTable(namespace, name, InlineTableConstructor9(constructor, a1, a2, a3, a4, a5, a6, a7, a8, a9)) + +public fun CreateModuleScope.createModuleConfiguringScopeTemporaryTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5, A6, A7, A8, A9) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4, a5: A5, a6: A6, a7: A7, a8: A8, a9: A9 +): Table = + this.createModuleConfiguringScopeTemporaryTable(namespace, name, InlineTableConstructor9(constructor, a1, a2, a3, a4, a5, a6, a7, a8, a9)) + +public fun Module<*>.createSessionScopeTemporaryTable( + name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5, A6, A7, A8, A9) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4, a5: A5, a6: A6, a7: A7, a8: A8, a9: A9 +): Table = + this.createSessionScopeTemporaryTable(name, InlineTableConstructor9(constructor, a1, a2, a3, a4, a5, a6, a7, a8, a9)) + +public fun Module<*>.createTransactionScopeTemporaryTable( + name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5, A6, A7, A8, A9) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4, a5: A5, a6: A6, a7: A7, a8: A8, a9: A9 +): Table = + this.createTransactionScopeTemporaryTable(name, InlineTableConstructor9(constructor, a1, a2, a3, a4, a5, a6, a7, a8, a9)) + +public open class InlineTableConstructor10( + private val constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10) -> tUE, + private val a1: A1, private val a2: A2, private val a3: A3, private val a4: A4, private val a5: A5, private val a6: A6, private val a7: A7, private val a8: A8, private val a9: A9, private val a10: A10 +) : TableConstructor { + override fun createTable(context: TableConstructor.Scope): tUE { + return this.constructor(context, this.a1, this.a2, this.a3, this.a4, this.a5, this.a6, this.a7, this.a8, this.a9, this.a10) + } +} + +public fun CreateModuleScope.createTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4, a5: A5, a6: A6, a7: A7, a8: A8, a9: A9, a10: A10 +): Table = + this.createTable(namespace, name, InlineTableConstructor10(constructor, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10)) + +public fun CreateModuleScope.createSessionScopeTemporaryTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4, a5: A5, a6: A6, a7: A7, a8: A8, a9: A9, a10: A10 +): Table = + this.createSessionScopeTemporaryTable(namespace, name, InlineTableConstructor10(constructor, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10)) + +public fun CreateModuleScope.createTransactionScopeTemporaryTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4, a5: A5, a6: A6, a7: A7, a8: A8, a9: A9, a10: A10 +): Table = + this.createTransactionScopeTemporaryTable(namespace, name, InlineTableConstructor10(constructor, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10)) + +public fun CreateModuleScope.createModuleConfiguringScopeTemporaryTable( + namespace: Namespace = this.rootNs, name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4, a5: A5, a6: A6, a7: A7, a8: A8, a9: A9, a10: A10 +): Table = + this.createModuleConfiguringScopeTemporaryTable(namespace, name, InlineTableConstructor10(constructor, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10)) + +public fun Module<*>.createSessionScopeTemporaryTable( + name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4, a5: A5, a6: A6, a7: A7, a8: A8, a9: A9, a10: A10 +): Table = + this.createSessionScopeTemporaryTable(name, InlineTableConstructor10(constructor, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10)) + +public fun Module<*>.createTransactionScopeTemporaryTable( + name: String, constructor: (TableConstructor.Scope, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10) -> tUE, + a1: A1, a2: A2, a3: A3, a4: A4, a5: A5, a6: A6, a7: A7, a8: A8, a9: A9, a10: A10 +): Table = + this.createTransactionScopeTemporaryTable(name, InlineTableConstructor10(constructor, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10))