All input params and output columns should have a name now; methods' params naming

This commit is contained in:
Andrew Golovashevich 2025-01-26 05:02:13 +03:00
parent 06ae4b308c
commit 5839d27b1f
4 changed files with 29 additions and 32 deletions

View File

@ -7,12 +7,11 @@ import ru.landgrafhomyak.serdha.api.v0.misc.QueryParam
import ru.landgrafhomyak.serdha.api.v0.runtime.ParametersSetter import ru.landgrafhomyak.serdha.api.v0.runtime.ParametersSetter
import ru.landgrafhomyak.serdha.api.v0.table.Table import ru.landgrafhomyak.serdha.api.v0.table.Table
@Suppress("RemoveRedundantQualifierName")
public interface DeleteQuery<QueryUserExtension : Any> : _Selectable<QueryUserExtension> { public interface DeleteQuery<QueryUserExtension : Any> : _Selectable<QueryUserExtension> {
public val userExtension: QueryUserExtension public val userExtension: QueryUserExtension
public interface Creator<QueryUserExtension : Any, TargetTableUserExtension : Any, SelectorTableUserExtension : Any> { public interface Creator<QueryUserExtension : Any, TargetTableUserExtension : Any, SelectorTableUserExtension : Any> {
public fun createDeleteWithReturning(table: Table<TargetTableUserExtension, *>, creator: DeleteQuery.Creator.Scope<QueryUserExtension, TargetTableUserExtension, SelectorTableUserExtension>): QueryUserExtension public fun createDeleteWithReturning(table: Table<TargetTableUserExtension, *>, creator: Scope<QueryUserExtension, TargetTableUserExtension, SelectorTableUserExtension>): QueryUserExtension
public interface Scope<QueryUserExtension : Any, TargetTableUserExtension : Any, SelectorTableUserExtension : Any> { public interface Scope<QueryUserExtension : Any, TargetTableUserExtension : Any, SelectorTableUserExtension : Any> {
public val types: DatabaseTypesProvider public val types: DatabaseTypesProvider
@ -21,9 +20,9 @@ public interface DeleteQuery<QueryUserExtension : Any> : _Selectable<QueryUserEx
public val selectorParams: ParametersSetter.WithRedirect<SelectorTableUserExtension, QueryUserExtension> public val selectorParams: ParametersSetter.WithRedirect<SelectorTableUserExtension, QueryUserExtension>
public var selectorColumn: Column<*, DatabaseType.ROW_ID<TargetTableUserExtension>, SelectorTableUserExtension> public var selectorColumn: Column<*, DatabaseType.ROW_ID<TargetTableUserExtension>, SelectorTableUserExtension>
public fun <RT, DT : DatabaseType<RT>> returnFromSubquery(c: Column<RT, DT, SelectorTableUserExtension>): Column<RT, DT, QueryUserExtension> public fun <RT, DT : DatabaseType<RT>> returnFromSubquery(name: String, column: Column<RT, DT, SelectorTableUserExtension>): Column<RT, DT, QueryUserExtension>
public fun <RT, DT : DatabaseType<RT>> returnRemovedValue(c: Column<RT, DT, TargetTableUserExtension>): Column<RT, DT, QueryUserExtension> public fun <RT, DT : DatabaseType<RT>> returnRemovedValue(name: String, column: Column<RT, DT, TargetTableUserExtension>): Column<RT, DT, QueryUserExtension>
public fun <RT, DT : DatabaseType<RT>> returnParam(c: QueryParam<RT, DT, TargetTableUserExtension>): Column<RT, DT, QueryUserExtension> public fun <RT, DT : DatabaseType<RT>> returnParam(name: String, column: QueryParam<RT, DT, TargetTableUserExtension>): Column<RT, DT, QueryUserExtension>
} }
} }
} }

View File

@ -13,9 +13,10 @@ public interface InsertQuery<QueryUserExtension : Any> {
@Suppress("ClassName") @Suppress("ClassName")
public interface _UpsertClauseScope<QueryUserExtension : Any, TargetTableUserExtension : Any> { public interface _UpsertClauseScope<QueryUserExtension : Any, TargetTableUserExtension : Any> {
public fun keepColumn(c: Column<*, *, TargetTableUserExtension>) public fun keepColumn(column: Column<*, *, TargetTableUserExtension>)
public fun overrideColumn(c: Column<*, *, TargetTableUserExtension>) public fun overrideColumn(column: Column<*, *, TargetTableUserExtension>)
public fun setConstant(c: QueryParam<*, *, QueryUserExtension>) public fun <RT, DT : DatabaseType<RT>> setFromParam(dst: Column<RT, DT, QueryUserExtension>, src: QueryParam<RT, DT, QueryUserExtension>)
public fun <RT> setConstant(dst: Column<RT, *, QueryUserExtension>, src: RT)
} }
@Suppress("ClassName") @Suppress("ClassName")
@ -35,13 +36,12 @@ public interface InsertQuery<QueryUserExtension : Any> {
public interface Scope<QueryUserExtension : Any, TargetTableUserExtension : Any> : _CommonInsertCreatorScope<QueryUserExtension, TargetTableUserExtension> { public interface Scope<QueryUserExtension : Any, TargetTableUserExtension : Any> : _CommonInsertCreatorScope<QueryUserExtension, TargetTableUserExtension> {
public fun <RT, DT : DatabaseType<RT>> queryParam(name: String, type: DT): QueryParam<RT, DT, QueryUserExtension> public fun <RT, DT : DatabaseType<RT>> queryParam(name: String, type: DT): QueryParam<RT, DT, QueryUserExtension>
public fun <RT, DT : DatabaseType<RT>> insertConstant(column: Column<RT, DT, TargetTableUserExtension>, paramName: String = column.name): QueryParam<RT, DT, QueryUserExtension> public fun <RT, DT : DatabaseType<RT>> insertConstant(dst: Column<RT, DT, TargetTableUserExtension>, src: QueryParam<RT, DT, QueryUserExtension>)
public fun <RT, DT : DatabaseType<RT>> insertConstant(column: Column<RT, DT, TargetTableUserExtension>, param: QueryParam<RT, DT, QueryUserExtension>)
public fun onConflictReturnOnly(u: UniqueIndex<TargetTableUserExtension>) public fun onConflictReturnOnly(u: UniqueIndex<TargetTableUserExtension>)
public fun <RT, DT : DatabaseType<RT>> returnInsertedValue(c: Column<RT, DT, TargetTableUserExtension>): Column<RT, DT, QueryUserExtension> public fun <RT, DT : DatabaseType<RT>> returnInsertedValue(name: String, c: Column<RT, DT, TargetTableUserExtension>): Column<RT, DT, QueryUserExtension>
public fun <RT, DT : DatabaseType<RT>> returnParam(c: QueryParam<RT, DT, TargetTableUserExtension>): Column<RT, DT, QueryUserExtension> public fun <RT, DT : DatabaseType<RT>> returnParam(name: String, c: QueryParam<RT, DT, TargetTableUserExtension>): Column<RT, DT, QueryUserExtension>
} }
} }
} }
@ -56,15 +56,14 @@ public interface InsertQuery<QueryUserExtension : Any> {
public val sourceQueryParams: ParametersSetter.WithRedirect<SourceQueryUserExtension, QueryUserExtension> public val sourceQueryParams: ParametersSetter.WithRedirect<SourceQueryUserExtension, QueryUserExtension>
public fun <RT, DT : DatabaseType<RT>> insertConstant(column: Column<RT, DT, TargetTableUserExtension>, paramName: String = column.name): QueryParam<RT, DT, QueryUserExtension> public fun <RT, DT : DatabaseType<RT>> insertConstant(dst: Column<RT, DT, TargetTableUserExtension>, src: QueryParam<RT, DT, QueryUserExtension>)
public fun <RT, DT : DatabaseType<RT>> insertConstant(column: Column<RT, DT, TargetTableUserExtension>, param: QueryParam<RT, DT, QueryUserExtension>) public fun <RT, DT : DatabaseType<RT>> insertFromSubquery(dst: Column<RT, DT, TargetTableUserExtension>, src: QueryParam<RT, DT, SourceQueryUserExtension>)
public fun <RT, DT : DatabaseType<RT>> insertFromSubquery(column: Column<RT, DT, TargetTableUserExtension>, subquery: QueryParam<RT, DT, SourceQueryUserExtension>)
public fun onConflictReturnOnly(u: UniqueIndex<TargetTableUserExtension>) public fun onConflictReturnOnly(u: UniqueIndex<TargetTableUserExtension>)
public fun <RT, DT : DatabaseType<RT>> returnFromSubquery(c: Column<RT, DT, SourceQueryUserExtension>): Column<RT, DT, QueryUserExtension> public fun <RT, DT : DatabaseType<RT>> returnFromSubquery(name: String, column: Column<RT, DT, SourceQueryUserExtension>): Column<RT, DT, QueryUserExtension>
public fun <RT, DT : DatabaseType<RT>> returnNewValue(c: Column<RT, DT, TargetTableUserExtension>): Column<RT, DT, QueryUserExtension> public fun <RT, DT : DatabaseType<RT>> returnNewValue(name: String, column: Column<RT, DT, TargetTableUserExtension>): Column<RT, DT, QueryUserExtension>
public fun <RT, DT : DatabaseType<RT>> returnParam(c: QueryParam<RT, DT, TargetTableUserExtension>): Column<RT, DT, QueryUserExtension> public fun <RT, DT : DatabaseType<RT>> returnParam(name: String, param: QueryParam<RT, DT, TargetTableUserExtension>): Column<RT, DT, QueryUserExtension>
} }
} }
} }
@ -76,7 +75,6 @@ public interface InsertQuery<QueryUserExtension : Any> {
public interface Scope<QueryUserExtension : Any, TargetTableUserExtension : Any> : _CommonInsertCreatorScope<QueryUserExtension, TargetTableUserExtension> { public interface Scope<QueryUserExtension : Any, TargetTableUserExtension : Any> : _CommonInsertCreatorScope<QueryUserExtension, TargetTableUserExtension> {
public fun <RT, DT : DatabaseType<RT>> inputColumn(name: String, type: DT): QueryParam<RT, DT, QueryUserExtension> public fun <RT, DT : DatabaseType<RT>> inputColumn(name: String, type: DT): QueryParam<RT, DT, QueryUserExtension>
public fun <RT, DT : DatabaseType<RT>> insertColumn(dst: Column<RT, DT, TargetTableUserExtension>, name: String = dst.name)
public fun <RT, DT : DatabaseType<RT>> insertColumn(dst: Column<RT, DT, TargetTableUserExtension>, src: QueryParam<RT, DT, QueryUserExtension>) public fun <RT, DT : DatabaseType<RT>> insertColumn(dst: Column<RT, DT, TargetTableUserExtension>, src: QueryParam<RT, DT, QueryUserExtension>)
} }
} }

View File

@ -27,14 +27,14 @@ public interface SelectQuery<QueryUserExtension : Any> : _Selectable<QueryUserEx
output: Expression.OutputLinker<ExpressionUserExtension, QueryUserExtension> output: Expression.OutputLinker<ExpressionUserExtension, QueryUserExtension>
) )
public fun where(expression: IntermediateColumn<Boolean, DatabaseType.BOOLEAN, QueryUserExtension>) public fun where(column: IntermediateColumn<Boolean, DatabaseType.BOOLEAN, QueryUserExtension>)
public fun orderBy(order: Order, vararg expression: IntermediateColumn<*, *, QueryUserExtension>) public fun orderBy(order: Order, vararg column: IntermediateColumn<*, *, QueryUserExtension>)
public var limit: UInt public var limit: UInt
public var offset: ULong public var offset: ULong
public fun <RT, DT : DatabaseType<RT>> returnParam(expr: QueryParam<RT, DT, QueryUserExtension>): Column<RT, DT, QueryUserExtension> public fun <RT, DT : DatabaseType<RT>> returnParam(name: String, param: QueryParam<RT, DT, QueryUserExtension>): Column<RT, DT, QueryUserExtension>
public fun <RT, DT : DatabaseType<RT>> returnColumn(expr: IntermediateColumn<RT, DT, QueryUserExtension>): Column<RT, DT, QueryUserExtension> public fun <RT, DT : DatabaseType<RT>> returnColumn(name: String, column: IntermediateColumn<RT, DT, QueryUserExtension>): Column<RT, DT, QueryUserExtension>
} }
public interface JoinCreator<QueryUserExtension : Any, LeftTableUserExtension : Any, RightTableUserExtension : Any> : _CommonSelectCreatorScope<QueryUserExtension> { public interface JoinCreator<QueryUserExtension : Any, LeftTableUserExtension : Any, RightTableUserExtension : Any> : _CommonSelectCreatorScope<QueryUserExtension> {
@ -44,8 +44,8 @@ public interface SelectQuery<QueryUserExtension : Any> : _Selectable<QueryUserEx
public val leftSubqueryParams: ParametersSetter.WithRedirect<LeftTableUserExtension, QueryUserExtension> public val leftSubqueryParams: ParametersSetter.WithRedirect<LeftTableUserExtension, QueryUserExtension>
public val rightSubqueryParams: ParametersSetter.WithRedirect<RightTableUserExtension, QueryUserExtension> public val rightSubqueryParams: ParametersSetter.WithRedirect<RightTableUserExtension, QueryUserExtension>
public fun <RT, DT : DatabaseType<RT>> selectColumnFromLeft(param: Column<RT, DT, LeftTableUserExtension>): IntermediateColumn<RT, DT, QueryUserExtension> public fun <RT, DT : DatabaseType<RT>> selectColumnFromLeft(column: Column<RT, DT, LeftTableUserExtension>): IntermediateColumn<RT, DT, QueryUserExtension>
public fun <RT, DT : DatabaseType<RT>> selectColumnFromRight(param: Column<RT, DT, RightTableUserExtension>): IntermediateColumn<RT, DT, QueryUserExtension> public fun <RT, DT : DatabaseType<RT>> selectColumnFromRight(column: Column<RT, DT, RightTableUserExtension>): IntermediateColumn<RT, DT, QueryUserExtension>
} }
} }

View File

@ -20,14 +20,14 @@ public interface UpdateQuery<QueryUserExtension : Any> : _Selectable<QueryUserEx
public val selectorParams: ParametersSetter.WithRedirect<SelectorTableUserExtension, QueryUserExtension> public val selectorParams: ParametersSetter.WithRedirect<SelectorTableUserExtension, QueryUserExtension>
public var selectorColumn: Column<*, DatabaseType.ROW_ID<TargetTableUserExtension>, SelectorTableUserExtension> public var selectorColumn: Column<*, DatabaseType.ROW_ID<TargetTableUserExtension>, SelectorTableUserExtension>
public fun <RT, DT : DatabaseType<RT>> updateColumnWithSubquery(c: Column<RT, DT, TargetTableUserExtension>, e: Column<RT, DT, SelectorTableUserExtension>) public fun <RT, DT : DatabaseType<RT>> updateColumnWithSubquery(dst: Column<RT, DT, TargetTableUserExtension>, src: Column<RT, DT, SelectorTableUserExtension>)
public fun <RT, DT : DatabaseType<RT>> updateColumnWithOldValue(c: Column<RT, DT, TargetTableUserExtension>, e: Column<RT, DT, TargetTableUserExtension>) public fun <RT, DT : DatabaseType<RT>> updateColumnWithOldValue(dst: Column<RT, DT, TargetTableUserExtension>, src: Column<RT, DT, TargetTableUserExtension>)
public fun <RT, DT : DatabaseType<RT>> updateColumnWithParam(c: Column<RT, DT, TargetTableUserExtension>, e: QueryParam<RT, DT, QueryUserExtension>) public fun <RT, DT : DatabaseType<RT>> updateColumnWithParam(dst: Column<RT, DT, TargetTableUserExtension>, src: QueryParam<RT, DT, QueryUserExtension>)
public fun <RT, DT : DatabaseType<RT>> returnFromSubquery(c: Column<RT, DT, SelectorTableUserExtension>): Column<RT, DT, QueryUserExtension> public fun <RT, DT : DatabaseType<RT>> returnFromSubquery(name: String, column: Column<RT, DT, SelectorTableUserExtension>): Column<RT, DT, QueryUserExtension>
public fun <RT, DT : DatabaseType<RT>> returnOldValue(c: Column<RT, DT, TargetTableUserExtension>): Column<RT, DT, QueryUserExtension> public fun <RT, DT : DatabaseType<RT>> returnOldValue(name: String, column: Column<RT, DT, TargetTableUserExtension>): Column<RT, DT, QueryUserExtension>
public fun <RT, DT : DatabaseType<RT>> returnNewValue(c: Column<RT, DT, TargetTableUserExtension>): Column<RT, DT, QueryUserExtension> public fun <RT, DT : DatabaseType<RT>> returnNewValue(name: String, column: Column<RT, DT, TargetTableUserExtension>): Column<RT, DT, QueryUserExtension>
public fun <RT, DT : DatabaseType<RT>> returnParam(c: QueryParam<RT, DT, TargetTableUserExtension>): Column<RT, DT, QueryUserExtension> public fun <RT, DT : DatabaseType<RT>> returnParam(name: String, param: QueryParam<RT, DT, TargetTableUserExtension>): Column<RT, DT, QueryUserExtension>
} }
} }
} }