summaryrefslogtreecommitdiff
path: root/src/main/java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/org/zwobble/hobgoblin/compiler/output/generators/sqlscripts/SqlScriptsGenerator.java31
1 files changed, 20 insertions, 11 deletions
diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/sqlscripts/SqlScriptsGenerator.java b/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/sqlscripts/SqlScriptsGenerator.java
index 5089271..b526e38 100644
--- a/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/sqlscripts/SqlScriptsGenerator.java
+++ b/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/sqlscripts/SqlScriptsGenerator.java
@@ -1,9 +1,6 @@
package org.zwobble.hobgoblin.compiler.output.generators.sqlscripts;
-import org.zwobble.hobgoblin.compiler.ast.typed.TypedDatabaseSchemaDefinitionNode;
-import org.zwobble.hobgoblin.compiler.ast.typed.TypedDatabaseSchemaStatementNode;
-import org.zwobble.hobgoblin.compiler.ast.typed.TypedNamespaceNode;
-import org.zwobble.hobgoblin.compiler.ast.typed.TypedTableDefinitionNode;
+import org.zwobble.hobgoblin.compiler.ast.typed.*;
import org.zwobble.hobgoblin.compiler.config.OutputConfig;
import org.zwobble.hobgoblin.compiler.output.generators.Generator;
import org.zwobble.hobgoblin.compiler.output.generators.GeneratorDefinition;
@@ -70,17 +67,29 @@ public class SqlScriptsGenerator implements Generator {
) throws IOException {
for (var namespace : namespaces) {
for (var namespaceStatement : namespace.body()) {
- if (namespaceStatement instanceof TypedDatabaseSchemaDefinitionNode databaseSchemaDefinition) {
- generateDatabaseSchemaDefinition(
- databaseSchemaDefinition,
- namespace.namespaceName(),
- typesInfo
- );
- }
+ generateNamespaceStatement(
+ namespaceStatement,
+ namespace.namespaceName(),
+ typesInfo
+ );
}
}
}
+ private void generateNamespaceStatement(
+ TypedNamespaceStatementNode namespaceStatement,
+ NamespaceName namespaceName,
+ TypesInfo typesInfo
+ ) throws IOException {
+ if (namespaceStatement instanceof TypedDatabaseSchemaDefinitionNode databaseSchemaDefinition) {
+ generateDatabaseSchemaDefinition(
+ databaseSchemaDefinition,
+ namespaceName,
+ typesInfo
+ );
+ }
+ }
+
@Override
public List<Stripper> strippers() {
return List.of(SqlWriter.stripper(this.outputPath));