'DialectKey' renamed to 'DriverType' and 'DialectResolver' contents moved into corresponding interfaces

This commit is contained in:
Andrew Golovashevich 2025-05-07 17:31:02 +03:00
parent 5b5ee0e7b7
commit c13175445f
5 changed files with 149 additions and 144 deletions

View File

@ -1,4 +1,19 @@
package ru.landgrafhomyak.db.sql_skeleton_0.api.misc
import ru.landgrafhomyak.db.sql_skeleton_0.api.raw.DriverType
public interface DatabaseType<RUNTIME_TYPE : Any?>
public interface DatabaseType<@Suppress("unused") RUNTIME_TYPE : Any?> {
public fun interface ImplementationsProvider<RUNTIME_TYPE> {
public fun provideStatementImplementations_databaseType(scope: Scope<RUNTIME_TYPE>)
public interface Scope<RUNTIME_TYPE> {
@Suppress("ERROR_SUPPRESSION", "BOUNDS_NOT_ALLOWED_IF_BOUNDED_BY_TYPE_PARAMETER")
public fun <DATABASE_TYPE, DATABASE_TYPE_UNBOUND> bind(
key: DriverType<DATABASE_TYPE_UNBOUND, *, *, *, *, *, *, *, *>, type: DATABASE_TYPE
) where DATABASE_TYPE_UNBOUND : DatabaseType<*>,
DATABASE_TYPE : DatabaseType<RUNTIME_TYPE>,
DATABASE_TYPE : DATABASE_TYPE_UNBOUND
}
}
}

View File

@ -1,53 +1,168 @@
package ru.landgrafhomyak.db.sql_skeleton_0.api.queries
public interface RawStatement<qUE : Any?, RUNTIME_KEY: Any> : _Statement<qUE, RUNTIME_KEY> {
import ru.landgrafhomyak.db.sql_skeleton_0.api.raw.DriverType
public interface RawStatement<qUE : Any?, RUNTIME_KEY : Any> : _Statement<qUE, RUNTIME_KEY> {
public override val uExt: qUE
public interface Void2Void<qUE : Any?, RUNTIME_KEY: Any> : RawStatement<qUE, RUNTIME_KEY>, _Statement.Void2Void<qUE, RUNTIME_KEY> {
public interface Void2Void<qUE : Any?, RUNTIME_KEY : Any> : RawStatement<qUE, RUNTIME_KEY>, _Statement.Void2Void<qUE, RUNTIME_KEY> {
override val uExt: qUE
public interface Constructor<qUE : Any?>
public interface Constructor<@Suppress("unused") qUE : Any?>
public interface ImplementationsProvider<USER_EXTENSION : Any?> {
public fun provideStatementImplementations_void2void(scope: Scope<USER_EXTENSION>)
public interface Scope<USER_EXTENSION : Any?> {
@Suppress("ERROR_SUPPRESSION", "BOUNDS_NOT_ALLOWED_IF_BOUNDED_BY_TYPE_PARAMETER")
public fun <STATEMENT_CONSTRUCTOR, STATEMENT_CONSTRUCTOR_UNBOUND> bind(
driverType: DriverType<*, STATEMENT_CONSTRUCTOR_UNBOUND, *, *, *, *, *, *, *>,
constructor: STATEMENT_CONSTRUCTOR
) where STATEMENT_CONSTRUCTOR_UNBOUND : Constructor<*>,
STATEMENT_CONSTRUCTOR : Constructor<USER_EXTENSION>,
STATEMENT_CONSTRUCTOR : STATEMENT_CONSTRUCTOR_UNBOUND
}
}
}
public interface Void2Row<qUE : Any, RUNTIME_KEY: Any> : RawStatement<qUE, RUNTIME_KEY>, _Statement.Void2Row<qUE, RUNTIME_KEY> {
public interface Void2Row<qUE : Any, RUNTIME_KEY : Any> : RawStatement<qUE, RUNTIME_KEY>, _Statement.Void2Row<qUE, RUNTIME_KEY> {
override val uExt: qUE
public interface Constructor<qUE : Any>
public interface Constructor<@Suppress("unused") qUE : Any>
public interface ImplementationsProvider<USER_EXTENSION : Any> {
public fun provideStatementImplementations_void2row(scope: Scope<USER_EXTENSION>)
public interface Scope<USER_EXTENSION : Any> {
@Suppress("ERROR_SUPPRESSION", "BOUNDS_NOT_ALLOWED_IF_BOUNDED_BY_TYPE_PARAMETER")
public fun <STATEMENT_CONSTRUCTOR, STATEMENT_CONSTRUCTOR_UNBOUND> bind(
driverType: DriverType<*, *, STATEMENT_CONSTRUCTOR_UNBOUND, *, *, *, *, *, *>,
constructor: STATEMENT_CONSTRUCTOR
) where STATEMENT_CONSTRUCTOR_UNBOUND : Constructor<*>,
STATEMENT_CONSTRUCTOR : Constructor<USER_EXTENSION>,
STATEMENT_CONSTRUCTOR : STATEMENT_CONSTRUCTOR_UNBOUND
}
}
}
public interface Void2RowOrNull<qUE : Any, RUNTIME_KEY: Any> : RawStatement<qUE, RUNTIME_KEY>, _Statement.Void2RowOrNull<qUE, RUNTIME_KEY> {
public interface Void2RowOrNull<qUE : Any, RUNTIME_KEY : Any> : RawStatement<qUE, RUNTIME_KEY>, _Statement.Void2RowOrNull<qUE, RUNTIME_KEY> {
override val uExt: qUE
public interface Constructor<qUE : Any>
public interface Constructor<@Suppress("unused") qUE : Any>
public interface ImplementationsProvider<USER_EXTENSION : Any> {
public fun provideStatementImplementations_void2rowOrNull(scope: Scope<USER_EXTENSION>)
public interface Scope<USER_EXTENSION : Any> {
@Suppress("ERROR_SUPPRESSION", "BOUNDS_NOT_ALLOWED_IF_BOUNDED_BY_TYPE_PARAMETER")
public fun <STATEMENT_CONSTRUCTOR, STATEMENT_CONSTRUCTOR_UNBOUND> bind(
driverType: DriverType<*, *, *, STATEMENT_CONSTRUCTOR_UNBOUND, *, *, *, *, *>,
constructor: STATEMENT_CONSTRUCTOR
) where STATEMENT_CONSTRUCTOR_UNBOUND : Constructor<*>,
STATEMENT_CONSTRUCTOR : Constructor<USER_EXTENSION>,
STATEMENT_CONSTRUCTOR : STATEMENT_CONSTRUCTOR_UNBOUND
}
}
}
public interface Void2Table<qUE : Any, RUNTIME_KEY: Any> : RawStatement<qUE, RUNTIME_KEY>, _Statement.Void2Table<qUE, RUNTIME_KEY> {
public interface Void2Table<qUE : Any, RUNTIME_KEY : Any> : RawStatement<qUE, RUNTIME_KEY>, _Statement.Void2Table<qUE, RUNTIME_KEY> {
override val uExt: qUE
public interface Constructor<qUE : Any>
public interface Constructor<@Suppress("unused") qUE : Any>
public interface ImplementationsProvider<USER_EXTENSION : Any> {
public fun provideStatementImplementations_void2table(selector: Selector<USER_EXTENSION>)
public interface Selector<USER_EXTENSION : Any> {
@Suppress("ERROR_SUPPRESSION", "BOUNDS_NOT_ALLOWED_IF_BOUNDED_BY_TYPE_PARAMETER")
public fun <STATEMENT_CONSTRUCTOR, STATEMENT_CONSTRUCTOR_UNBOUND> bind(
driverType: DriverType<*, *, *, *, STATEMENT_CONSTRUCTOR_UNBOUND, *, *, *, *>,
constructor: STATEMENT_CONSTRUCTOR
) where STATEMENT_CONSTRUCTOR_UNBOUND : Constructor<*>,
STATEMENT_CONSTRUCTOR : Constructor<USER_EXTENSION>,
STATEMENT_CONSTRUCTOR : STATEMENT_CONSTRUCTOR_UNBOUND
}
}
}
public interface Params2Void<qUE : Any, RUNTIME_KEY: Any> : RawStatement<qUE, RUNTIME_KEY>, _Statement.Params2Void<qUE, RUNTIME_KEY> {
public interface Params2Void<qUE : Any, RUNTIME_KEY : Any> : RawStatement<qUE, RUNTIME_KEY>, _Statement.Params2Void<qUE, RUNTIME_KEY> {
override val uExt: qUE
public interface Constructor<qUE : Any>
public interface Constructor<@Suppress("unused") qUE : Any>
public interface ImplementationsProvider<USER_EXTENSION : Any> {
public fun provideStatementImplementations_params2void(scope: Scope<USER_EXTENSION>)
public interface Scope<USER_EXTENSION : Any> {
@Suppress("ERROR_SUPPRESSION", "BOUNDS_NOT_ALLOWED_IF_BOUNDED_BY_TYPE_PARAMETER")
public fun <STATEMENT_CONSTRUCTOR, STATEMENT_CONSTRUCTOR_UNBOUND> bind(
driverType: DriverType<*, *, *, *, *, STATEMENT_CONSTRUCTOR_UNBOUND, *, *, *>,
constructor: STATEMENT_CONSTRUCTOR
) where STATEMENT_CONSTRUCTOR_UNBOUND : Constructor<*>,
STATEMENT_CONSTRUCTOR : Constructor<USER_EXTENSION>,
STATEMENT_CONSTRUCTOR : STATEMENT_CONSTRUCTOR_UNBOUND
}
}
}
public interface Params2Row<qUE : Any, RUNTIME_KEY: Any> : RawStatement<qUE, RUNTIME_KEY>, _Statement.Params2Row<qUE, RUNTIME_KEY> {
public interface Params2Row<qUE : Any, RUNTIME_KEY : Any> : RawStatement<qUE, RUNTIME_KEY>, _Statement.Params2Row<qUE, RUNTIME_KEY> {
override val uExt: qUE
public interface Constructor<qUE : Any>
public interface Constructor<@Suppress("unused") qUE : Any>
public interface ImplementationsProvider<USER_EXTENSION : Any> {
public fun provideStatementImplementations_params2row(scope: Scope<USER_EXTENSION>)
public interface Scope<USER_EXTENSION : Any> {
@Suppress("ERROR_SUPPRESSION", "BOUNDS_NOT_ALLOWED_IF_BOUNDED_BY_TYPE_PARAMETER")
public fun <STATEMENT_CONSTRUCTOR, STATEMENT_CONSTRUCTOR_UNBOUND> bind(
driverType: DriverType<*, *, *, *, *, *, STATEMENT_CONSTRUCTOR_UNBOUND, *, *>,
constructor: STATEMENT_CONSTRUCTOR
) where STATEMENT_CONSTRUCTOR_UNBOUND : Constructor<*>,
STATEMENT_CONSTRUCTOR : Constructor<USER_EXTENSION>,
STATEMENT_CONSTRUCTOR : STATEMENT_CONSTRUCTOR_UNBOUND
}
}
}
public interface Params2RowOrNull<qUE : Any, RUNTIME_KEY: Any> : RawStatement<qUE, RUNTIME_KEY>, _Statement.Params2RowOrNull<qUE, RUNTIME_KEY> {
public interface Params2RowOrNull<qUE : Any, RUNTIME_KEY : Any> : RawStatement<qUE, RUNTIME_KEY>, _Statement.Params2RowOrNull<qUE, RUNTIME_KEY> {
override val uExt: qUE
public interface Constructor<qUE : Any>
public interface Constructor<@Suppress("unused") qUE : Any>
public interface ImplementationsProvider<USER_EXTENSION : Any> {
public fun provideStatementImplementations_params2rowOrNull(scope: Scope<USER_EXTENSION>)
public interface Scope<USER_EXTENSION : Any> {
@Suppress("ERROR_SUPPRESSION", "BOUNDS_NOT_ALLOWED_IF_BOUNDED_BY_TYPE_PARAMETER")
public fun <STATEMENT_CONSTRUCTOR, STATEMENT_CONSTRUCTOR_UNBOUND> bind(
driverType: DriverType<*, *, *, *, *, *, *, STATEMENT_CONSTRUCTOR_UNBOUND, *>,
constructor: STATEMENT_CONSTRUCTOR
) where STATEMENT_CONSTRUCTOR_UNBOUND : Constructor<*>,
STATEMENT_CONSTRUCTOR : Constructor<USER_EXTENSION>,
STATEMENT_CONSTRUCTOR : STATEMENT_CONSTRUCTOR_UNBOUND
}
}
}
public interface Params2Table<qUE : Any, RUNTIME_KEY: Any> : RawStatement<qUE, RUNTIME_KEY>, _Statement.Params2Table<qUE, RUNTIME_KEY> {
public interface Params2Table<qUE : Any, RUNTIME_KEY : Any> : RawStatement<qUE, RUNTIME_KEY>, _Statement.Params2Table<qUE, RUNTIME_KEY> {
override val uExt: qUE
public interface Constructor<qUE : Any>
public interface Constructor<@Suppress("unused") qUE : Any>
public interface ImplementationsProvider<USER_EXTENSION : Any> {
public fun provideStatementImplementations_params2table(scope: Scope<USER_EXTENSION>)
public interface Scope<USER_EXTENSION : Any> {
@Suppress("ERROR_SUPPRESSION", "BOUNDS_NOT_ALLOWED_IF_BOUNDED_BY_TYPE_PARAMETER")
public fun <STATEMENT_CONSTRUCTOR, STATEMENT_CONSTRUCTOR_UNBOUND> bind(
driverType: DriverType<*, *, *, *, *, *, *, *, STATEMENT_CONSTRUCTOR_UNBOUND>,
constructor: STATEMENT_CONSTRUCTOR
) where STATEMENT_CONSTRUCTOR_UNBOUND : Constructor<*>,
STATEMENT_CONSTRUCTOR : Constructor<USER_EXTENSION>,
STATEMENT_CONSTRUCTOR : STATEMENT_CONSTRUCTOR_UNBOUND
}
}
}
}

View File

@ -1,7 +1,6 @@
package ru.landgrafhomyak.db.sql_skeleton_0.api.queries
import kotlin.jvm.JvmName
import ru.landgrafhomyak.db.sql_skeleton_0.api.raw.DialectKey
@Suppress("ClassName")

View File

@ -1,124 +0,0 @@
package ru.landgrafhomyak.db.sql_skeleton_0.api.raw
import ru.landgrafhomyak.db.sql_skeleton_0.api.misc.DatabaseType
import ru.landgrafhomyak.db.sql_skeleton_0.api.queries.RawStatement
public interface DialectResolver {
public fun interface Type<RUNTIME_TYPE> : DialectResolver {
public fun resolveByDialect_databaseType(selector: Selector<RUNTIME_TYPE>)
public interface Selector<RUNTIME_TYPE> {
@Suppress("BOUNDS_NOT_ALLOWED_IF_BOUNDED_BY_TYPE_PARAMETER")
public fun <DATABASE_TYPE, DATABASE_TYPE_UNBOUND, DIALECT : DialectKey<DATABASE_TYPE_UNBOUND, *, *, *, *, *, *, *, *>> bind(
key: DIALECT, type: DATABASE_TYPE
) where DATABASE_TYPE_UNBOUND : DatabaseType<*>,
DATABASE_TYPE : DatabaseType<RUNTIME_TYPE>,
DATABASE_TYPE : DATABASE_TYPE_UNBOUND
}
}
public fun interface Statement_Void2Void<USER_EXTENSION : Any?> {
public fun resolveByDialect_statement_void2void(selector: Selector<USER_EXTENSION>)
public interface Selector<USER_EXTENSION : Any?> {
@Suppress("BOUNDS_NOT_ALLOWED_IF_BOUNDED_BY_TYPE_PARAMETER")
public fun <STATEMENT_CONSTRUCTOR, STATEMENT_CONSTRUCTOR_UNBOUND, DIALECT : DialectKey<*, STATEMENT_CONSTRUCTOR_UNBOUND, *, *, *, *, *, *, *>> bind(
key: DIALECT, constructor: STATEMENT_CONSTRUCTOR
) where STATEMENT_CONSTRUCTOR_UNBOUND : RawStatement.Void2Void.Constructor<*>,
STATEMENT_CONSTRUCTOR : RawStatement.Void2Void.Constructor<USER_EXTENSION>,
STATEMENT_CONSTRUCTOR : STATEMENT_CONSTRUCTOR_UNBOUND
}
}
public fun interface Statement_Void2Row<USER_EXTENSION : Any> {
public fun resolveByDialect_statement_void2row(selector: Selector<USER_EXTENSION>)
public interface Selector<USER_EXTENSION : Any> {
@Suppress("BOUNDS_NOT_ALLOWED_IF_BOUNDED_BY_TYPE_PARAMETER")
public fun <STATEMENT_CONSTRUCTOR, STATEMENT_CONSTRUCTOR_UNBOUND, DIALECT : DialectKey<*, *, STATEMENT_CONSTRUCTOR_UNBOUND, *, *, *, *, *, *>> bind(
key: DIALECT, constructor: STATEMENT_CONSTRUCTOR
) where STATEMENT_CONSTRUCTOR_UNBOUND : RawStatement.Void2Row.Constructor<*>,
STATEMENT_CONSTRUCTOR : RawStatement.Void2Row.Constructor<USER_EXTENSION>,
STATEMENT_CONSTRUCTOR : STATEMENT_CONSTRUCTOR_UNBOUND
}
}
public fun interface Statement_Void2RowOrNull<USER_EXTENSION : Any> {
public fun resolveByDialect_statement_void2rowOrNull(selector: Selector<USER_EXTENSION>)
public interface Selector<USER_EXTENSION : Any> {
@Suppress("BOUNDS_NOT_ALLOWED_IF_BOUNDED_BY_TYPE_PARAMETER")
public fun <STATEMENT_CONSTRUCTOR, STATEMENT_CONSTRUCTOR_UNBOUND, DIALECT : DialectKey<*, *, *, STATEMENT_CONSTRUCTOR_UNBOUND, *, *, *, *, *>> bind(
key: DIALECT, constructor: STATEMENT_CONSTRUCTOR
) where STATEMENT_CONSTRUCTOR_UNBOUND : RawStatement.Void2RowOrNull.Constructor<*>,
STATEMENT_CONSTRUCTOR : RawStatement.Void2RowOrNull.Constructor<USER_EXTENSION>,
STATEMENT_CONSTRUCTOR : STATEMENT_CONSTRUCTOR_UNBOUND
}
}
public fun interface Statement_Void2Table<USER_EXTENSION : Any> {
public fun resolveByDialect_statement_void2table(selector: Selector<USER_EXTENSION>)
public interface Selector<USER_EXTENSION : Any> {
@Suppress("BOUNDS_NOT_ALLOWED_IF_BOUNDED_BY_TYPE_PARAMETER")
public fun <STATEMENT_CONSTRUCTOR, STATEMENT_CONSTRUCTOR_UNBOUND, DIALECT : DialectKey<*, *, *, *, STATEMENT_CONSTRUCTOR_UNBOUND, *, *, *, *>> bind(
key: DIALECT, constructor: STATEMENT_CONSTRUCTOR
) where STATEMENT_CONSTRUCTOR_UNBOUND : RawStatement.Void2Table.Constructor<*>,
STATEMENT_CONSTRUCTOR : RawStatement.Void2Table.Constructor<USER_EXTENSION>,
STATEMENT_CONSTRUCTOR : STATEMENT_CONSTRUCTOR_UNBOUND
}
}
public fun interface Statement_Params2Void<USER_EXTENSION : Any> {
public fun resolveByDialect_statement_params2void(selector: Selector<USER_EXTENSION>)
public interface Selector<USER_EXTENSION : Any> {
@Suppress("BOUNDS_NOT_ALLOWED_IF_BOUNDED_BY_TYPE_PARAMETER")
public fun <STATEMENT_CONSTRUCTOR, STATEMENT_CONSTRUCTOR_UNBOUND, DIALECT : DialectKey<*, *, *, *, *, STATEMENT_CONSTRUCTOR_UNBOUND, *, *, *>> bind(
key: DIALECT, constructor: STATEMENT_CONSTRUCTOR
) where STATEMENT_CONSTRUCTOR_UNBOUND : RawStatement.Params2Void.Constructor<*>,
STATEMENT_CONSTRUCTOR : RawStatement.Params2Void.Constructor<USER_EXTENSION>,
STATEMENT_CONSTRUCTOR : STATEMENT_CONSTRUCTOR_UNBOUND
}
}
public fun interface Statement_Params2Row<USER_EXTENSION : Any> {
public fun resolveByDialect_statement_params2row(selector: Selector<USER_EXTENSION>)
public interface Selector<USER_EXTENSION : Any> {
@Suppress("BOUNDS_NOT_ALLOWED_IF_BOUNDED_BY_TYPE_PARAMETER")
public fun <STATEMENT_CONSTRUCTOR, STATEMENT_CONSTRUCTOR_UNBOUND, DIALECT : DialectKey<*, *, *, *, *, *, STATEMENT_CONSTRUCTOR_UNBOUND, *, *>> bind(
key: DIALECT, constructor: STATEMENT_CONSTRUCTOR
) where STATEMENT_CONSTRUCTOR_UNBOUND : RawStatement.Params2Row.Constructor<*>,
STATEMENT_CONSTRUCTOR : RawStatement.Params2Row.Constructor<USER_EXTENSION>,
STATEMENT_CONSTRUCTOR : STATEMENT_CONSTRUCTOR_UNBOUND
}
}
public fun interface Statement_Params2RowOrNull<USER_EXTENSION : Any> {
public fun resolveByDialect_statement_params2rowOrNull(selector: Selector<USER_EXTENSION>)
public interface Selector<USER_EXTENSION : Any> {
@Suppress("BOUNDS_NOT_ALLOWED_IF_BOUNDED_BY_TYPE_PARAMETER")
public fun <STATEMENT_CONSTRUCTOR, STATEMENT_CONSTRUCTOR_UNBOUND, DIALECT : DialectKey<*, *, *, *, *, *, *, STATEMENT_CONSTRUCTOR_UNBOUND, *>> bind(
key: DIALECT, constructor: STATEMENT_CONSTRUCTOR
) where STATEMENT_CONSTRUCTOR_UNBOUND : RawStatement.Params2RowOrNull.Constructor<*>,
STATEMENT_CONSTRUCTOR : RawStatement.Params2RowOrNull.Constructor<USER_EXTENSION>,
STATEMENT_CONSTRUCTOR : STATEMENT_CONSTRUCTOR_UNBOUND
}
}
public fun interface Statement_Params2Table<USER_EXTENSION : Any> {
public fun resolveByDialect_statement_params2table(selector: Selector<USER_EXTENSION>)
public interface Selector<USER_EXTENSION : Any> {
@Suppress("BOUNDS_NOT_ALLOWED_IF_BOUNDED_BY_TYPE_PARAMETER")
public fun <STATEMENT_CONSTRUCTOR, STATEMENT_CONSTRUCTOR_UNBOUND, DIALECT : DialectKey<*, *, *, *, *, *, *, *, STATEMENT_CONSTRUCTOR_UNBOUND>> bind(
key: DIALECT, constructor: STATEMENT_CONSTRUCTOR
) where STATEMENT_CONSTRUCTOR_UNBOUND : RawStatement.Params2Table.Constructor<*>,
STATEMENT_CONSTRUCTOR : RawStatement.Params2Table.Constructor<USER_EXTENSION>,
STATEMENT_CONSTRUCTOR : STATEMENT_CONSTRUCTOR_UNBOUND
}
}
}

View File

@ -3,7 +3,7 @@ package ru.landgrafhomyak.db.sql_skeleton_0.api.raw
import ru.landgrafhomyak.db.sql_skeleton_0.api.misc.DatabaseType
import ru.landgrafhomyak.db.sql_skeleton_0.api.queries.RawStatement
public interface DialectKey<
public interface DriverType<
DATABASE_TYPE : DatabaseType<*>,
STATEMENT_CONSTRUCTOR__VOID_2_VOID : RawStatement.Void2Void.Constructor<*>,
STATEMENT_CONSTRUCTOR__VOID_2_ROW : RawStatement.Void2Row.Constructor<*>,