aboutsummaryrefslogtreecommitdiff
path: root/src/main/java
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2023-07-21 12:33:17 +0100
committerMichael Williamson <mike@zwobble.org>2023-07-21 12:33:17 +0100
commit3f71d5e7eb9bc1eb49e3e2694f262233b470ac7b (patch)
tree2e1892665a9685f8ef93dafd9b9a89fe437604ca /src/main/java
parent55be460e03ff3fdb9e3a54b979c5ca16bd6045fe (diff)
Add addCompilationUnitElement() to PatioCodeGenContext
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/org/shedlang/compiler/patio/PatioCodeGenContext.java15
1 files changed, 12 insertions, 3 deletions
diff --git a/src/main/java/org/shedlang/compiler/patio/PatioCodeGenContext.java b/src/main/java/org/shedlang/compiler/patio/PatioCodeGenContext.java
index 1e5072e8..fdfb8b0b 100644
--- a/src/main/java/org/shedlang/compiler/patio/PatioCodeGenContext.java
+++ b/src/main/java/org/shedlang/compiler/patio/PatioCodeGenContext.java
@@ -66,10 +66,12 @@ public record PatioCodeGenContext(
return toResult(fullName);
}
- public CompilationUnitContext addDataElement(String name, PatioDataLayout layout, Source source) {
+ public CompilationUnitContext addCompilationUnitElement(
+ PatioCompilationUnitElement element
+ ) {
return new CompilationUnitContext(
this.typeInfo,
- this.elementsByName.plus(name, new PatioDataElement(name, layout, source))
+ this.elementsByName.plus(element.name(), element)
);
}
@@ -229,8 +231,15 @@ public record PatioCodeGenContext(
}
public PatioCodeGenContext addDataElement(String name, PatioDataLayout layout, Source source) {
+ var dataElement = new PatioDataElement(name, layout, source);
+ return addCompilationUnitElement(dataElement);
+ }
+
+ public PatioCodeGenContext addCompilationUnitElement(
+ PatioCompilationUnitElement element
+ ) {
return withCompilationUnitContext(
- this.compilationUnitContext.addDataElement(name, layout, source)
+ this.compilationUnitContext.addCompilationUnitElement(element)
);
}