diff options
| author | Michael Williamson <mike@zwobble.org> | 2023-07-21 12:33:17 +0100 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2023-07-21 12:33:17 +0100 |
| commit | 3f71d5e7eb9bc1eb49e3e2694f262233b470ac7b (patch) | |
| tree | 2e1892665a9685f8ef93dafd9b9a89fe437604ca /src/main/java | |
| parent | 55be460e03ff3fdb9e3a54b979c5ca16bd6045fe (diff) | |
Add addCompilationUnitElement() to PatioCodeGenContext
Diffstat (limited to 'src/main/java')
| -rw-r--r-- | src/main/java/org/shedlang/compiler/patio/PatioCodeGenContext.java | 15 |
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) ); } |
