Some boilerplate for table constructing
This commit is contained in:
parent
7760b38549
commit
7eb5397a93
@ -27,5 +27,12 @@ public class Namespace(
|
||||
return constructor.createTable(table, TableConstructor.Scope(table))
|
||||
}
|
||||
|
||||
public fun <tUE : Any> table(name: String, constructor: (table: Table, members: TableConstructor.Scope) -> tUE): tUE =
|
||||
this.table(name, DefaultTableConstructorWrapper(constructor))
|
||||
|
||||
public val path: List<String> = this._path.asList()
|
||||
|
||||
private class DefaultTableConstructorWrapper<tUE : Any>(private val fn: (table: Table, members: TableConstructor.Scope) -> tUE) : TableConstructor<tUE> {
|
||||
override fun createTable(table: Table, members: TableConstructor.Scope): tUE = this.fn(table, members)
|
||||
}
|
||||
}
|
@ -0,0 +1,9 @@
|
||||
package ru.landgrafhomyak.db.raw_sql_skeleton
|
||||
|
||||
public abstract class _TableUserExtensionTemplate(private val __table: Table) {
|
||||
public val __namespace: Namespace get() = this.__table.namespace
|
||||
public val __name: String get() = this.__table.name
|
||||
public val __asSqlReference: String get() = this.__table.asSqlReference
|
||||
public val __asSqlString: String get() = this.__table.asSqlString
|
||||
override fun toString(): String = this.__table.toString()
|
||||
}
|
Loading…
Reference in New Issue
Block a user