From f826cf25f99e8b81f02751e91e8d3005c412734c Mon Sep 17 00:00:00 2001 From: Andrew Golovashevich Date: Mon, 24 Mar 2025 03:09:33 +0300 Subject: [PATCH] Added .toString() shortcut and some reflection --- .../kotlin/ru/landgrafhomyak/db/raw_sql_skeleton/Column.kt | 7 +++++-- .../ru/landgrafhomyak/db/raw_sql_skeleton/Namespace.kt | 2 +- .../kotlin/ru/landgrafhomyak/db/raw_sql_skeleton/Table.kt | 6 +++++- .../landgrafhomyak/db/raw_sql_skeleton/TableConstructor.kt | 1 - 4 files changed, 11 insertions(+), 5 deletions(-) diff --git a/src/commonMain/kotlin/ru/landgrafhomyak/db/raw_sql_skeleton/Column.kt b/src/commonMain/kotlin/ru/landgrafhomyak/db/raw_sql_skeleton/Column.kt index 9e69ef9..1fe925a 100644 --- a/src/commonMain/kotlin/ru/landgrafhomyak/db/raw_sql_skeleton/Column.kt +++ b/src/commonMain/kotlin/ru/landgrafhomyak/db/raw_sql_skeleton/Column.kt @@ -1,9 +1,12 @@ -package ru.landgrafhomyak.db.serdha0.api.misc +package ru.landgrafhomyak.db.raw_sql_skeleton public class Column( + public val table: Table, public val name: String, public val referenceType: String, public val declarationType: String ) { - public constructor(name: String, type: String) : this(name, type, type) + public constructor(table: Table, name: String, type: String) : this(table, name, type, type) + + override fun toString(): String = this.name } \ No newline at end of file diff --git a/src/commonMain/kotlin/ru/landgrafhomyak/db/raw_sql_skeleton/Namespace.kt b/src/commonMain/kotlin/ru/landgrafhomyak/db/raw_sql_skeleton/Namespace.kt index 57b8fe9..70cb351 100644 --- a/src/commonMain/kotlin/ru/landgrafhomyak/db/raw_sql_skeleton/Namespace.kt +++ b/src/commonMain/kotlin/ru/landgrafhomyak/db/raw_sql_skeleton/Namespace.kt @@ -18,7 +18,7 @@ public class Namespace( throw IllegalArgumentException("Name is already used: $name") this.usedNames.add(name) - return Table(this.formatTableName(name), this._path + this._name) + return Table(this, this.formatTableName(name)) } public val _path: List = this.path.asList() diff --git a/src/commonMain/kotlin/ru/landgrafhomyak/db/raw_sql_skeleton/Table.kt b/src/commonMain/kotlin/ru/landgrafhomyak/db/raw_sql_skeleton/Table.kt index 439d8d1..cc387c8 100644 --- a/src/commonMain/kotlin/ru/landgrafhomyak/db/raw_sql_skeleton/Table.kt +++ b/src/commonMain/kotlin/ru/landgrafhomyak/db/raw_sql_skeleton/Table.kt @@ -1,7 +1,11 @@ package ru.landgrafhomyak.db.raw_sql_skeleton -public class Table(public val name: String, public val namespacesFromModuleRoot: List) { +public class Table( + public val namespace: Namespace, + public val name: String +) { public val asSqlReference: String = "\"${this.name}\"" public val asSqlString: String = "\'${this.name}\'" + override fun toString(): String = this.asSqlReference } \ No newline at end of file diff --git a/src/commonMain/kotlin/ru/landgrafhomyak/db/raw_sql_skeleton/TableConstructor.kt b/src/commonMain/kotlin/ru/landgrafhomyak/db/raw_sql_skeleton/TableConstructor.kt index 5619127..c4b81ec 100644 --- a/src/commonMain/kotlin/ru/landgrafhomyak/db/raw_sql_skeleton/TableConstructor.kt +++ b/src/commonMain/kotlin/ru/landgrafhomyak/db/raw_sql_skeleton/TableConstructor.kt @@ -1,6 +1,5 @@ package ru.landgrafhomyak.db.raw_sql_skeleton -import ru.landgrafhomyak.db.serdha0.api.misc.Column import ru.landgrafhomyak.db.serdha0.api.table.Index import ru.landgrafhomyak.db.serdha0.api.table.UniqueIndex