From 91ac6c464a807dea58ffc525847dddea25afae20 Mon Sep 17 00:00:00 2001 From: Andrew Golovashevich Date: Sun, 5 Jan 2025 20:11:52 +0300 Subject: [PATCH] Generics parameters order and naming fixes in DML interfaces --- .../api/v0/ddl/module/CreateModuleScope.kt | 44 +++++++++---------- .../serdha/api/v0/dml/CopyQuery.kt | 12 ++--- .../serdha/api/v0/dml/DeleteQuery.kt | 12 ++--- .../serdha/api/v0/dml/InsertQuery.kt | 12 ++--- .../serdha/api/v0/dml/UpdateQuery.kt | 8 ++-- .../v0/dml/_CreateInsertOrCopyQueryScope.kt | 10 ++--- 6 files changed, 49 insertions(+), 49 deletions(-) diff --git a/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/ddl/module/CreateModuleScope.kt b/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/ddl/module/CreateModuleScope.kt index efa1592..e777f7e 100644 --- a/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/ddl/module/CreateModuleScope.kt +++ b/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/ddl/module/CreateModuleScope.kt @@ -89,13 +89,13 @@ public interface CreateModuleScope { * * On [module upgrading][ModuleTemplate.CreateModuleTemplatesScope.upgradeTemplate] must be recreated if needed. * - * @param QueryUserWrapper User's type for containing query-related descriptors. + * @param QueryUserExtension User's type for containing query-related descriptors. * @param initializer Query-related descriptors initializer. * @return Query descriptor. * * @see CreateModuleScope.createTemporarySelectQuery */ - public fun createSelectQuery(initializer: SelectQuery.Creator): SelectQuery + public fun createSelectQuery(initializer: SelectQuery.Creator): SelectQuery /** * Creates 'SELECT' query accessible only while the module is [creating][ModuleTemplate.ModuleCreator] or [updating][ModuleTemplate.ModuleUpgrade]. @@ -103,13 +103,13 @@ public interface CreateModuleScope { * * On [module upgrading][ModuleTemplate.CreateModuleTemplatesScope.upgradeTemplate] must be recreated if needed. * - * @param QueryUserWrapper User's type for containing query-related descriptors. + * @param QueryUserExtension User's type for containing query-related descriptors. * @param initializer Query-related descriptors initializer. * @return Query descriptor. * * @see CreateModuleScope.createSelectQuery */ - public fun createTemporarySelectQuery(initializer: SelectQuery.Creator): SelectQuery + public fun createTemporarySelectQuery(initializer: SelectQuery.Creator): SelectQuery /** @@ -117,14 +117,14 @@ public interface CreateModuleScope { * * On [module upgrading][ModuleTemplate.CreateModuleTemplatesScope.upgradeTemplate] must be recreated if needed. * - * @param TableUserExtension User's type with descriptors related to table to which values will be inserted. - * @param QueryUserWrapper User's type for containing query-related descriptors. + * @param TargetTableUserExtension User's type with descriptors related to table to which values will be inserted. + * @param QueryUserExtension User's type for containing query-related descriptors. * @param initializer Query-related descriptors initializer. * @return Query descriptor. * * @see CreateModuleScope.createTemporaryInsertQuery */ - public fun createInsertQuery(table: Table, initializer: InsertQuery.Creator): InsertQuery + public fun createInsertQuery(table: Table, initializer: InsertQuery.Creator): InsertQuery /** * Creates 'INSERT ... VALUES' query accessible only while the module is [creating][ModuleTemplate.ModuleCreator] or [updating][ModuleTemplate.ModuleUpgrade]. @@ -132,27 +132,27 @@ public interface CreateModuleScope { * * On [module upgrading][ModuleTemplate.CreateModuleTemplatesScope.upgradeTemplate] must be recreated if needed. * - * @param TableUserExtension User's type with descriptors related to table to which values will be inserted. - * @param QueryUserWrapper User's type for containing query-related descriptors. + * @param TargetTableUserExtension User's type with descriptors related to table to which values will be inserted. + * @param QueryUserExtension User's type for containing query-related descriptors. * @param initializer Query-related descriptors initializer. * @return Query descriptor. * * @see CreateModuleScope.createInsertQuery */ - public fun createTemporaryInsertQuery(table: Table, initializer: InsertQuery.Creator): InsertQuery + public fun createTemporaryInsertQuery(table: Table, initializer: InsertQuery.Creator): InsertQuery /** * Creates 'INSERT ... FROM' query. * * On [module upgrading][ModuleTemplate.CreateModuleTemplatesScope.upgradeTemplate] must be recreated if needed. * - * @param TableUserExtension User's type with descriptors related to table to which values will be inserted. + * @param TargetTableUserExtension User's type with descriptors related to table to which values will be inserted. * @param initializer Query-related descriptors initializer. * @return Query descriptor. * * @see CreateModuleScope.createTemporaryCopyQuery */ - public fun createCopyQuery(table: Table, initializer: CopyQuery.Creator): CopyQuery + public fun createCopyQuery(table: Table, initializer: CopyQuery.Creator): CopyQuery /** * Creates 'INSERT ... FROM' query accessible only while the module is [creating][ModuleTemplate.ModuleCreator] or [updating][ModuleTemplate.ModuleUpgrade]. @@ -160,26 +160,26 @@ public interface CreateModuleScope { * * On [module upgrading][ModuleTemplate.CreateModuleTemplatesScope.upgradeTemplate] must be recreated if needed. * - * @param TableUserExtension User's type with descriptors related to table to which values will be inserted. + * @param TargetTableUserExtension User's type with descriptors related to table to which values will be inserted. * @param initializer Query-related descriptors initializer. * @return Query descriptor. * * @see CreateModuleScope.createCopyQuery */ - public fun createTemporaryCopyQuery(table: Table, initializer: CopyQuery.Creator): CopyQuery + public fun createTemporaryCopyQuery(table: Table, initializer: CopyQuery.Creator): CopyQuery /** * Creates 'UPDATE' query. * * On [module upgrading][ModuleTemplate.CreateModuleTemplatesScope.upgradeTemplate] must be recreated if needed. * - * @param TableUserExtension User's type with descriptors related to table to which values will be inserted. + * @param TargetTableUserExtension User's type with descriptors related to table to which values will be inserted. * @param initializer Query-related descriptors initializer. * @return Query descriptor. * * @see CreateModuleScope.createTemporaryUpdateQuery */ - public fun createUpdateQuery(table: Table, initializer: UpdateQuery.Creator): UpdateQuery + public fun createUpdateQuery(table: Table, initializer: UpdateQuery.Creator): UpdateQuery /** * Creates 'UPDATE' query accessible only while the module is [creating][ModuleTemplate.ModuleCreator] or [updating][ModuleTemplate.ModuleUpgrade]. @@ -187,13 +187,13 @@ public interface CreateModuleScope { * * On [module upgrading][ModuleTemplate.CreateModuleTemplatesScope.upgradeTemplate] must be recreated if needed. * - * @param TableUserExtension User's type with descriptors related to table to which values will be inserted. + * @param TargetTableUserExtension User's type with descriptors related to table to which values will be inserted. * @param initializer Query-related descriptors initializer. * @return Query descriptor. * * @see CreateModuleScope.createUpdateQuery */ - public fun createTemporaryUpdateQuery(table: Table, initializer: UpdateQuery.Creator): UpdateQuery + public fun createTemporaryUpdateQuery(table: Table, initializer: UpdateQuery.Creator): UpdateQuery /** @@ -201,13 +201,13 @@ public interface CreateModuleScope { * * On [module upgrading][ModuleTemplate.CreateModuleTemplatesScope.upgradeTemplate] must be recreated if needed. * - * @param TableUserExtension User's type with descriptors related to table from which data will be deleted. + * @param TargetTableUserExtension User's type with descriptors related to table from which data will be deleted. * @param initializer Query-related descriptors initializer. * @return Query descriptor. * * @see CreateModuleScope.createTemporaryDeleteQuery */ - public fun createDeleteQuery(table: Table, initializer: DeleteQuery.Creator): DeleteQuery + public fun createDeleteQuery(table: Table, initializer: DeleteQuery.Creator): DeleteQuery /** * Creates 'DELETE' query accessible only while the module is [creating][ModuleTemplate.ModuleCreator] or [updating][ModuleTemplate.ModuleUpgrade]. @@ -215,13 +215,13 @@ public interface CreateModuleScope { * * On [module upgrading][ModuleTemplate.CreateModuleTemplatesScope.upgradeTemplate] must be recreated if needed. * - * @param TableUserExtension User's type with descriptors related to table from which data will be deleted. + * @param TargetTableUserExtension User's type with descriptors related to table from which data will be deleted. * @param initializer Query-related descriptors initializer. * @return Query descriptor. * * @see CreateModuleScope.createDeleteQuery */ - public fun createTemporaryDeleteQuery(table: Table, initializer: DeleteQuery.Creator): DeleteQuery + public fun createTemporaryDeleteQuery(table: Table, initializer: DeleteQuery.Creator): DeleteQuery /** * Replaces [specified namespace][rootNs] with schema provided by [template]. diff --git a/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/dml/CopyQuery.kt b/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/dml/CopyQuery.kt index 9329125..3a7fffa 100644 --- a/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/dml/CopyQuery.kt +++ b/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/dml/CopyQuery.kt @@ -12,15 +12,15 @@ public interface CopyQuery { /** * Functional interface for creating 'INSERT ... FROM' query. * - * Can be implemented like a companion object that just calls [QueryUserWrapper]'s constructor with the same or similar signature. + * Can be implemented like a companion object that just calls [QueryUserExtension]'s constructor with the same or similar signature. * - * @param TableUserExtension User's type with descriptors related to table to which values will be inserted. - * @param QueryUserWrapper User's type with descriptors related to query. + * @param QueryUserExtension User's type with descriptors related to query. + * @param TargetTableUserExtension User's type with descriptors related to table to which values will be inserted. * * @see CreateModuleScope.createCopyQuery * @see CreateModuleScope.createTemporaryCopyQuery */ - public interface Creator { + public interface Creator { /** * Scope method that uses [creator] to create a query. * @@ -31,9 +31,9 @@ public interface CopyQuery { * @see CreateModuleScope.createCopyQuery * @see CreateModuleScope.createTemporaryCopyQuery */ - public fun createCopy(table: Table, creator: Scope): QueryUserWrapper + public fun createCopy(table: Table, creator: Scope): QueryUserExtension - public interface Scope :_CreateInsertOrCopyQueryScope { + public interface Scope : _CreateInsertOrCopyQueryScope { public fun > insert(column: Column, expression: Expression) } } diff --git a/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/dml/DeleteQuery.kt b/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/dml/DeleteQuery.kt index 8c87bcc..66b6bc6 100644 --- a/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/dml/DeleteQuery.kt +++ b/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/dml/DeleteQuery.kt @@ -11,15 +11,15 @@ public interface DeleteQuery : _CommonCreateQueryScope /** * Functional interface for creating 'DELETE' query. * - * Can be implemented like a companion object that just calls [QueryUserWrapper]'s constructor with the same or similar signature. + * Can be implemented like a companion object that just calls [QueryUserExtension]'s constructor with the same or similar signature. * - * @param TableUserExtension User's type with descriptors related to table from which data will be deleted. - * @param QueryUserWrapper User's type with descriptors related to query. + * @param QueryUserExtension User's type with descriptors related to query. + * @param TargetTableUserExtension User's type with descriptors related to table from which data will be deleted. * * @see CreateModuleScope.createDeleteQuery * @see CreateModuleScope.createTemporaryDeleteQuery */ - public interface Creator { + public interface Creator { /** * Scope method that uses [creator] to create a query. * @@ -30,9 +30,9 @@ public interface DeleteQuery : _CommonCreateQueryScope * @see CreateModuleScope.createDeleteQuery * @see CreateModuleScope.createTemporaryDeleteQuery */ - public fun createDelete(table: Table, creator: Scope): QueryUserWrapper + public fun createDelete(table: Table, creator: Scope): QueryUserExtension - public interface Scope : _CommonCreateQueryScope { + public interface Scope : _CommonCreateQueryScope { public val targetTable: SelectedTable public fun where(expression: Expression) diff --git a/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/dml/InsertQuery.kt b/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/dml/InsertQuery.kt index cbc2ffa..2e548ff 100644 --- a/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/dml/InsertQuery.kt +++ b/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/dml/InsertQuery.kt @@ -12,15 +12,15 @@ public interface InsertQuery { /** * Functional interface for creating 'INSERT ... VALUES' query. * - * Can be implemented like a companion object that just calls [QueryUserWrapper]'s constructor with the same or similar signature. + * Can be implemented like a companion object that just calls [QueryUserExtension]'s constructor with the same or similar signature. * - * @param TableUserExtension User's type with descriptors related to table to which values will be inserted. - * @param QueryUserWrapper User's type with descriptors related to query. + * @param QueryUserExtension User's type with descriptors related to query. + * @param TargetTableUserExtension User's type with descriptors related to table to which values will be inserted. * * @see CreateModuleScope.createInsertQuery * @see CreateModuleScope.createTemporaryInsertQuery */ - public interface Creator { + public interface Creator { /** * Scope method that uses [creator] to create a query. * @@ -31,9 +31,9 @@ public interface InsertQuery { * @see CreateModuleScope.createInsertQuery * @see CreateModuleScope.createTemporaryInsertQuery */ - public fun createInsert(table: Table, creator: Scope): QueryUserWrapper + public fun createInsert(table: Table, creator: Scope): QueryUserExtension - public interface Scope : _CreateInsertOrCopyQueryScope { + public interface Scope : _CreateInsertOrCopyQueryScope { public class DataParam<@Suppress("unused") QueryUserExtension : Any> private constructor() public val dataExpressionBuilder: Expression.Builder> diff --git a/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/dml/UpdateQuery.kt b/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/dml/UpdateQuery.kt index 44d69a1..3cd0327 100644 --- a/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/dml/UpdateQuery.kt +++ b/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/dml/UpdateQuery.kt @@ -14,13 +14,13 @@ public interface UpdateQuery : _CommonCreateQueryScope * * Can be implemented like a companion object that just calls [QueryUserWrapper]'s constructor with the same or similar signature. * - * @param TableUserExtension User's type with descriptors related to table, whose rows will be updated. * @param QueryUserWrapper User's type with descriptors related to query. + * @param TableUserExtension User's type with descriptors related to table, whose rows will be updated. * * @see CreateModuleScope.createUpdateQuery * @see CreateModuleScope.createTemporaryUpdateQuery */ - public interface Creator { + public interface Creator { /** * Scope method that uses [creator] to create a query. * @@ -31,9 +31,9 @@ public interface UpdateQuery : _CommonCreateQueryScope * @see CreateModuleScope.createUpdateQuery * @see CreateModuleScope.createTemporaryUpdateQuery */ - public fun createUpdate(table: Table, creator: Scope): QueryUserWrapper + public fun createUpdate(table: Table, creator: Scope): QueryUserWrapper - public interface Scope : _CommonCreateQueryScope { + public interface Scope : _CommonCreateQueryScope { public val targetTable: SelectedTable public fun > selectOldColumnValue(c: Column): Expression diff --git a/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/dml/_CreateInsertOrCopyQueryScope.kt b/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/dml/_CreateInsertOrCopyQueryScope.kt index 9bbcebc..8b32c67 100644 --- a/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/dml/_CreateInsertOrCopyQueryScope.kt +++ b/src/commonMain/kotlin/ru/landgrafhomyak/serdha/api/v0/dml/_CreateInsertOrCopyQueryScope.kt @@ -6,17 +6,17 @@ import ru.landgrafhomyak.serdha.api.v0.ddl.table.UniqueIndex import ru.landgrafhomyak.serdha.api.v0.ddl.types.DatabaseType @Suppress("ClassName") -public interface _CreateInsertOrCopyQueryScope : _CommonCreateQueryScope { +public interface _CreateInsertOrCopyQueryScope : _CommonCreateQueryScope { public val insertedValues: SelectedTable @Suppress("ClassName") - public interface _UpsertClauseScope { + public interface _UpsertClauseScope { public fun > oldColumnValue(c: Column): Expression public fun > updateColumn(c: Column, e: Expression) } - public fun onConflictUpdate(u: UniqueIndex, c: (_UpsertClauseScope) -> Unit) + public fun onConflictUpdate(u: UniqueIndex, c: (_UpsertClauseScope) -> Unit) public fun onConflictThrow(u: UniqueIndex) @@ -25,11 +25,11 @@ public interface _CreateInsertOrCopyQueryScope @Suppress("ClassName") - public interface _ReturningUpdatedClauseScope : _CommonCreateQueryScope._ReturningClauseScope { + public interface _ReturningUpdatedClauseScope : _CommonCreateQueryScope._ReturningClauseScope { public fun > oldColumnValue(c: Column): Expression } - public val returningUpdated: _ReturningUpdatedClauseScope + public val returningUpdated: _ReturningUpdatedClauseScope }