From 5839d27b1f2f7ee4dd5ea5e9c46f9348bf792a62 Mon Sep 17 00:00:00 2001 From: Andrew Golovashevich Date: Sun, 26 Jan 2025 05:02:13 +0300 Subject: [PATCH] All input params and output columns should have a name now; methods' params naming --- .../serdha/api/v0/queries/DeleteQuery.kt | 9 +++---- .../serdha/api/v0/queries/InsertQuery.kt | 26 +++++++++---------- .../serdha/api/v0/queries/SelectQuery.kt | 12 ++++----- .../serdha/api/v0/queries/UpdateQuery.kt | 14 +++++----- 4 files changed, 29 insertions(+), 32 deletions(-) diff --git a/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/queries/DeleteQuery.kt b/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/queries/DeleteQuery.kt index bffe9e8..c1261ca 100644 --- a/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/queries/DeleteQuery.kt +++ b/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/queries/DeleteQuery.kt @@ -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.table.Table -@Suppress("RemoveRedundantQualifierName") public interface DeleteQuery : _Selectable { public val userExtension: QueryUserExtension public interface Creator { - public fun createDeleteWithReturning(table: Table, creator: DeleteQuery.Creator.Scope): QueryUserExtension + public fun createDeleteWithReturning(table: Table, creator: Scope): QueryUserExtension public interface Scope { public val types: DatabaseTypesProvider @@ -21,9 +20,9 @@ public interface DeleteQuery : _Selectable public var selectorColumn: Column<*, DatabaseType.ROW_ID, SelectorTableUserExtension> - public fun > returnFromSubquery(c: Column): Column - public fun > returnRemovedValue(c: Column): Column - public fun > returnParam(c: QueryParam): Column + public fun > returnFromSubquery(name: String, column: Column): Column + public fun > returnRemovedValue(name: String, column: Column): Column + public fun > returnParam(name: String, column: QueryParam): Column } } } \ No newline at end of file diff --git a/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/queries/InsertQuery.kt b/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/queries/InsertQuery.kt index b014e98..2afe727 100644 --- a/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/queries/InsertQuery.kt +++ b/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/queries/InsertQuery.kt @@ -13,9 +13,10 @@ public interface InsertQuery { @Suppress("ClassName") public interface _UpsertClauseScope { - public fun keepColumn(c: Column<*, *, TargetTableUserExtension>) - public fun overrideColumn(c: Column<*, *, TargetTableUserExtension>) - public fun setConstant(c: QueryParam<*, *, QueryUserExtension>) + public fun keepColumn(column: Column<*, *, TargetTableUserExtension>) + public fun overrideColumn(column: Column<*, *, TargetTableUserExtension>) + public fun > setFromParam(dst: Column, src: QueryParam) + public fun setConstant(dst: Column, src: RT) } @Suppress("ClassName") @@ -35,13 +36,12 @@ public interface InsertQuery { public interface Scope : _CommonInsertCreatorScope { public fun > queryParam(name: String, type: DT): QueryParam - public fun > insertConstant(column: Column, paramName: String = column.name): QueryParam - public fun > insertConstant(column: Column, param: QueryParam) + public fun > insertConstant(dst: Column, src: QueryParam) public fun onConflictReturnOnly(u: UniqueIndex) - public fun > returnInsertedValue(c: Column): Column - public fun > returnParam(c: QueryParam): Column + public fun > returnInsertedValue(name: String, c: Column): Column + public fun > returnParam(name: String, c: QueryParam): Column } } } @@ -56,15 +56,14 @@ public interface InsertQuery { public val sourceQueryParams: ParametersSetter.WithRedirect - public fun > insertConstant(column: Column, paramName: String = column.name): QueryParam - public fun > insertConstant(column: Column, param: QueryParam) - public fun > insertFromSubquery(column: Column, subquery: QueryParam) + public fun > insertConstant(dst: Column, src: QueryParam) + public fun > insertFromSubquery(dst: Column, src: QueryParam) public fun onConflictReturnOnly(u: UniqueIndex) - public fun > returnFromSubquery(c: Column): Column - public fun > returnNewValue(c: Column): Column - public fun > returnParam(c: QueryParam): Column + public fun > returnFromSubquery(name: String, column: Column): Column + public fun > returnNewValue(name: String, column: Column): Column + public fun > returnParam(name: String, param: QueryParam): Column } } } @@ -76,7 +75,6 @@ public interface InsertQuery { public interface Scope : _CommonInsertCreatorScope { public fun > inputColumn(name: String, type: DT): QueryParam - public fun > insertColumn(dst: Column, name: String = dst.name) public fun > insertColumn(dst: Column, src: QueryParam) } } diff --git a/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/queries/SelectQuery.kt b/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/queries/SelectQuery.kt index 4f679a7..852f1c4 100644 --- a/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/queries/SelectQuery.kt +++ b/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/queries/SelectQuery.kt @@ -27,14 +27,14 @@ public interface SelectQuery : _Selectable ) - public fun where(expression: IntermediateColumn) - public fun orderBy(order: Order, vararg expression: IntermediateColumn<*, *, QueryUserExtension>) + public fun where(column: IntermediateColumn) + public fun orderBy(order: Order, vararg column: IntermediateColumn<*, *, QueryUserExtension>) public var limit: UInt public var offset: ULong - public fun > returnParam(expr: QueryParam): Column - public fun > returnColumn(expr: IntermediateColumn): Column + public fun > returnParam(name: String, param: QueryParam): Column + public fun > returnColumn(name: String, column: IntermediateColumn): Column } public interface JoinCreator : _CommonSelectCreatorScope { @@ -44,8 +44,8 @@ public interface SelectQuery : _Selectable public val rightSubqueryParams: ParametersSetter.WithRedirect - public fun > selectColumnFromLeft(param: Column): IntermediateColumn - public fun > selectColumnFromRight(param: Column): IntermediateColumn + public fun > selectColumnFromLeft(column: Column): IntermediateColumn + public fun > selectColumnFromRight(column: Column): IntermediateColumn } } diff --git a/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/queries/UpdateQuery.kt b/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/queries/UpdateQuery.kt index e137a49..d1b4d10 100644 --- a/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/queries/UpdateQuery.kt +++ b/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/queries/UpdateQuery.kt @@ -20,14 +20,14 @@ public interface UpdateQuery : _Selectable public var selectorColumn: Column<*, DatabaseType.ROW_ID, SelectorTableUserExtension> - public fun > updateColumnWithSubquery(c: Column, e: Column) - public fun > updateColumnWithOldValue(c: Column, e: Column) - public fun > updateColumnWithParam(c: Column, e: QueryParam) + public fun > updateColumnWithSubquery(dst: Column, src: Column) + public fun > updateColumnWithOldValue(dst: Column, src: Column) + public fun > updateColumnWithParam(dst: Column, src: QueryParam) - public fun > returnFromSubquery(c: Column): Column - public fun > returnOldValue(c: Column): Column - public fun > returnNewValue(c: Column): Column - public fun > returnParam(c: QueryParam): Column + public fun > returnFromSubquery(name: String, column: Column): Column + public fun > returnOldValue(name: String, column: Column): Column + public fun > returnNewValue(name: String, column: Column): Column + public fun > returnParam(name: String, param: QueryParam): Column } } } \ No newline at end of file