diff options
| author | Michael Williamson <mike@zwobble.org> | 2026-07-02 16:03:09 +0100 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2026-07-02 16:03:09 +0100 |
| commit | c7b76c51056407d14304ac1739b92960e4a2b1e6 (patch) | |
| tree | 7ce29d03d335878a59f06d8cd6d47151f5b7e09f /src | |
| parent | 40ef54f114de48d5ac6995010f731de2f2941e85 (diff) | |
Regenerate Java types from hobgoblin
Diffstat (limited to 'src')
22 files changed, 324 insertions, 0 deletions
diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/ast/untyped/UntypedConstructedTypeNode.java b/src/main/java/org/zwobble/hobgoblin/compiler/ast/untyped/UntypedConstructedTypeNode.java index 41c08d8..1c87fb6 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/ast/untyped/UntypedConstructedTypeNode.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/ast/untyped/UntypedConstructedTypeNode.java @@ -27,6 +27,18 @@ public record UntypedConstructedTypeNode(org.zwobble.hobgoblin.compiler.ast.unty return new org.zwobble.hobgoblin.compiler.ast.untyped.UntypedConstructedTypeNode.Builder(receiver, args, source); } + public org.zwobble.hobgoblin.compiler.ast.untyped.UntypedConstructedTypeNode.Builder addArg(org.zwobble.hobgoblin.compiler.ast.untyped.UntypedTypeLevelExpressionNode arg) { + var args = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.ast.untyped.UntypedTypeLevelExpressionNode>(this.args); + args.add(arg); + return new org.zwobble.hobgoblin.compiler.ast.untyped.UntypedConstructedTypeNode.Builder(receiver, args, source); + } + + public org.zwobble.hobgoblin.compiler.ast.untyped.UntypedConstructedTypeNode.Builder addArg(org.zwobble.hobgoblin.compiler.ast.untyped.UntypedTypeLevelExpressionNode.Builder arg) { + var args = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.ast.untyped.UntypedTypeLevelExpressionNode>(this.args); + args.add(arg.build()); + return new org.zwobble.hobgoblin.compiler.ast.untyped.UntypedConstructedTypeNode.Builder(receiver, args, source); + } + public org.zwobble.hobgoblin.compiler.ast.untyped.UntypedConstructedTypeNode.Builder withSource(org.zwobble.hobgoblin.compiler.sources.Source source) { return new org.zwobble.hobgoblin.compiler.ast.untyped.UntypedConstructedTypeNode.Builder(receiver, args, source); } diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/ast/untyped/UntypedEnumDefinitionNode.java b/src/main/java/org/zwobble/hobgoblin/compiler/ast/untyped/UntypedEnumDefinitionNode.java index 598d7c9..b957699 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/ast/untyped/UntypedEnumDefinitionNode.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/ast/untyped/UntypedEnumDefinitionNode.java @@ -23,6 +23,18 @@ public record UntypedEnumDefinitionNode(String name, java.util.List<org.zwobble. return new org.zwobble.hobgoblin.compiler.ast.untyped.UntypedEnumDefinitionNode.Builder(name, variants, docComment, source); } + public org.zwobble.hobgoblin.compiler.ast.untyped.UntypedEnumDefinitionNode.Builder addVariant(org.zwobble.hobgoblin.compiler.ast.untyped.UntypedEnumVariantDefinitionNode variant) { + var variants = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.ast.untyped.UntypedEnumVariantDefinitionNode>(this.variants); + variants.add(variant); + return new org.zwobble.hobgoblin.compiler.ast.untyped.UntypedEnumDefinitionNode.Builder(name, variants, docComment, source); + } + + public org.zwobble.hobgoblin.compiler.ast.untyped.UntypedEnumDefinitionNode.Builder addVariant(org.zwobble.hobgoblin.compiler.ast.untyped.UntypedEnumVariantDefinitionNode.Builder variant) { + var variants = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.ast.untyped.UntypedEnumVariantDefinitionNode>(this.variants); + variants.add(variant.build()); + return new org.zwobble.hobgoblin.compiler.ast.untyped.UntypedEnumDefinitionNode.Builder(name, variants, docComment, source); + } + public org.zwobble.hobgoblin.compiler.ast.untyped.UntypedEnumDefinitionNode.Builder withDocComment(org.zwobble.hobgoblin.compiler.ast.DocComment docComment) { return new org.zwobble.hobgoblin.compiler.ast.untyped.UntypedEnumDefinitionNode.Builder(name, variants, docComment, source); } diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/ast/untyped/UntypedImportNode.java b/src/main/java/org/zwobble/hobgoblin/compiler/ast/untyped/UntypedImportNode.java index 3ff9efe..b500912 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/ast/untyped/UntypedImportNode.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/ast/untyped/UntypedImportNode.java @@ -19,6 +19,12 @@ public record UntypedImportNode(java.util.List<String> importedNames, java.util. return new org.zwobble.hobgoblin.compiler.ast.untyped.UntypedImportNode.Builder(importedNames, ancestorDepth, namespaceName, source); } + public org.zwobble.hobgoblin.compiler.ast.untyped.UntypedImportNode.Builder addImportedName(String importedName) { + var importedNames = new java.util.ArrayList<String>(this.importedNames); + importedNames.add(importedName); + return new org.zwobble.hobgoblin.compiler.ast.untyped.UntypedImportNode.Builder(importedNames, ancestorDepth, namespaceName, source); + } + public org.zwobble.hobgoblin.compiler.ast.untyped.UntypedImportNode.Builder withAncestorDepth(java.util.Optional<java.lang.Integer> ancestorDepth) { return new org.zwobble.hobgoblin.compiler.ast.untyped.UntypedImportNode.Builder(importedNames, ancestorDepth, namespaceName, source); } diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/ast/untyped/UntypedNamespaceNode.java b/src/main/java/org/zwobble/hobgoblin/compiler/ast/untyped/UntypedNamespaceNode.java index 9311b69..176b013 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/ast/untyped/UntypedNamespaceNode.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/ast/untyped/UntypedNamespaceNode.java @@ -23,10 +23,34 @@ public record UntypedNamespaceNode(org.zwobble.hobgoblin.compiler.types.Namespac return new org.zwobble.hobgoblin.compiler.ast.untyped.UntypedNamespaceNode.Builder(namespaceName, imports, body, source); } + public org.zwobble.hobgoblin.compiler.ast.untyped.UntypedNamespaceNode.Builder addImport(org.zwobble.hobgoblin.compiler.ast.untyped.UntypedImportNode import_) { + var imports = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.ast.untyped.UntypedImportNode>(this.imports); + imports.add(import_); + return new org.zwobble.hobgoblin.compiler.ast.untyped.UntypedNamespaceNode.Builder(namespaceName, imports, body, source); + } + + public org.zwobble.hobgoblin.compiler.ast.untyped.UntypedNamespaceNode.Builder addImport(org.zwobble.hobgoblin.compiler.ast.untyped.UntypedImportNode.Builder import_) { + var imports = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.ast.untyped.UntypedImportNode>(this.imports); + imports.add(import_.build()); + return new org.zwobble.hobgoblin.compiler.ast.untyped.UntypedNamespaceNode.Builder(namespaceName, imports, body, source); + } + public org.zwobble.hobgoblin.compiler.ast.untyped.UntypedNamespaceNode.Builder withBody(java.util.List<org.zwobble.hobgoblin.compiler.ast.untyped.UntypedNamespaceStatementNode> body) { return new org.zwobble.hobgoblin.compiler.ast.untyped.UntypedNamespaceNode.Builder(namespaceName, imports, body, source); } + public org.zwobble.hobgoblin.compiler.ast.untyped.UntypedNamespaceNode.Builder addBodyElement(org.zwobble.hobgoblin.compiler.ast.untyped.UntypedNamespaceStatementNode bodyElement) { + var body = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.ast.untyped.UntypedNamespaceStatementNode>(this.body); + body.add(bodyElement); + return new org.zwobble.hobgoblin.compiler.ast.untyped.UntypedNamespaceNode.Builder(namespaceName, imports, body, source); + } + + public org.zwobble.hobgoblin.compiler.ast.untyped.UntypedNamespaceNode.Builder addBodyElement(org.zwobble.hobgoblin.compiler.ast.untyped.UntypedNamespaceStatementNode.Builder bodyElement) { + var body = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.ast.untyped.UntypedNamespaceStatementNode>(this.body); + body.add(bodyElement.build()); + return new org.zwobble.hobgoblin.compiler.ast.untyped.UntypedNamespaceNode.Builder(namespaceName, imports, body, source); + } + public org.zwobble.hobgoblin.compiler.ast.untyped.UntypedNamespaceNode.Builder withSource(org.zwobble.hobgoblin.compiler.sources.Source source) { return new org.zwobble.hobgoblin.compiler.ast.untyped.UntypedNamespaceNode.Builder(namespaceName, imports, body, source); } diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/ast/untyped/UntypedStructDefinitionNode.java b/src/main/java/org/zwobble/hobgoblin/compiler/ast/untyped/UntypedStructDefinitionNode.java index 5897e66..d0d489c 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/ast/untyped/UntypedStructDefinitionNode.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/ast/untyped/UntypedStructDefinitionNode.java @@ -23,6 +23,18 @@ public record UntypedStructDefinitionNode(String name, java.util.List<org.zwobbl return new org.zwobble.hobgoblin.compiler.ast.untyped.UntypedStructDefinitionNode.Builder(name, fields, docComment, source); } + public org.zwobble.hobgoblin.compiler.ast.untyped.UntypedStructDefinitionNode.Builder addField(org.zwobble.hobgoblin.compiler.ast.untyped.UntypedStructFieldDefinitionNode field) { + var fields = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.ast.untyped.UntypedStructFieldDefinitionNode>(this.fields); + fields.add(field); + return new org.zwobble.hobgoblin.compiler.ast.untyped.UntypedStructDefinitionNode.Builder(name, fields, docComment, source); + } + + public org.zwobble.hobgoblin.compiler.ast.untyped.UntypedStructDefinitionNode.Builder addField(org.zwobble.hobgoblin.compiler.ast.untyped.UntypedStructFieldDefinitionNode.Builder field) { + var fields = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.ast.untyped.UntypedStructFieldDefinitionNode>(this.fields); + fields.add(field.build()); + return new org.zwobble.hobgoblin.compiler.ast.untyped.UntypedStructDefinitionNode.Builder(name, fields, docComment, source); + } + public org.zwobble.hobgoblin.compiler.ast.untyped.UntypedStructDefinitionNode.Builder withDocComment(org.zwobble.hobgoblin.compiler.ast.DocComment docComment) { return new org.zwobble.hobgoblin.compiler.ast.untyped.UntypedStructDefinitionNode.Builder(name, fields, docComment, source); } diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/ast/untyped/UntypedSumDefinitionNode.java b/src/main/java/org/zwobble/hobgoblin/compiler/ast/untyped/UntypedSumDefinitionNode.java index f277aca..e02320c 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/ast/untyped/UntypedSumDefinitionNode.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/ast/untyped/UntypedSumDefinitionNode.java @@ -23,10 +23,34 @@ public record UntypedSumDefinitionNode(String name, java.util.List<org.zwobble.h return new org.zwobble.hobgoblin.compiler.ast.untyped.UntypedSumDefinitionNode.Builder(name, variants, fields, docComment, source); } + public org.zwobble.hobgoblin.compiler.ast.untyped.UntypedSumDefinitionNode.Builder addVariant(org.zwobble.hobgoblin.compiler.ast.untyped.UntypedSumVariantDefinitionNode variant) { + var variants = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.ast.untyped.UntypedSumVariantDefinitionNode>(this.variants); + variants.add(variant); + return new org.zwobble.hobgoblin.compiler.ast.untyped.UntypedSumDefinitionNode.Builder(name, variants, fields, docComment, source); + } + + public org.zwobble.hobgoblin.compiler.ast.untyped.UntypedSumDefinitionNode.Builder addVariant(org.zwobble.hobgoblin.compiler.ast.untyped.UntypedSumVariantDefinitionNode.Builder variant) { + var variants = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.ast.untyped.UntypedSumVariantDefinitionNode>(this.variants); + variants.add(variant.build()); + return new org.zwobble.hobgoblin.compiler.ast.untyped.UntypedSumDefinitionNode.Builder(name, variants, fields, docComment, source); + } + public org.zwobble.hobgoblin.compiler.ast.untyped.UntypedSumDefinitionNode.Builder withFields(java.util.List<org.zwobble.hobgoblin.compiler.ast.untyped.UntypedStructFieldDefinitionNode> fields) { return new org.zwobble.hobgoblin.compiler.ast.untyped.UntypedSumDefinitionNode.Builder(name, variants, fields, docComment, source); } + public org.zwobble.hobgoblin.compiler.ast.untyped.UntypedSumDefinitionNode.Builder addField(org.zwobble.hobgoblin.compiler.ast.untyped.UntypedStructFieldDefinitionNode field) { + var fields = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.ast.untyped.UntypedStructFieldDefinitionNode>(this.fields); + fields.add(field); + return new org.zwobble.hobgoblin.compiler.ast.untyped.UntypedSumDefinitionNode.Builder(name, variants, fields, docComment, source); + } + + public org.zwobble.hobgoblin.compiler.ast.untyped.UntypedSumDefinitionNode.Builder addField(org.zwobble.hobgoblin.compiler.ast.untyped.UntypedStructFieldDefinitionNode.Builder field) { + var fields = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.ast.untyped.UntypedStructFieldDefinitionNode>(this.fields); + fields.add(field.build()); + return new org.zwobble.hobgoblin.compiler.ast.untyped.UntypedSumDefinitionNode.Builder(name, variants, fields, docComment, source); + } + public org.zwobble.hobgoblin.compiler.ast.untyped.UntypedSumDefinitionNode.Builder withDocComment(org.zwobble.hobgoblin.compiler.ast.DocComment docComment) { return new org.zwobble.hobgoblin.compiler.ast.untyped.UntypedSumDefinitionNode.Builder(name, variants, fields, docComment, source); } diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaBlock.java b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaBlock.java index 1278f8c..2d8b899 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaBlock.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaBlock.java @@ -19,6 +19,18 @@ public record JavaBlock(java.util.List<org.zwobble.hobgoblin.compiler.output.lan return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaBlock.Builder(statements); } + public org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaBlock.Builder addStatement(org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaBlockStatement statement) { + var statements = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaBlockStatement>(this.statements); + statements.add(statement); + return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaBlock.Builder(statements); + } + + public org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaBlock.Builder addStatement(org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaBlockStatement.Builder statement) { + var statements = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaBlockStatement>(this.statements); + statements.add(statement.build()); + return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaBlock.Builder(statements); + } + // Custom area start: org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaBlock.Builder body // Custom area end: org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaBlock.Builder body } diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaClassDeclaration.java b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaClassDeclaration.java index 9e70ccc..e12a0cc 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaClassDeclaration.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaClassDeclaration.java @@ -27,10 +27,28 @@ public record JavaClassDeclaration(org.zwobble.hobgoblin.compiler.output.lang.ja return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaClassDeclaration.Builder(name, implementsTypes, body, customArea, docComment); } + public org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaClassDeclaration.Builder addImplementsType(org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaTypeRef implementsType) { + var implementsTypes = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaTypeRef>(this.implementsTypes); + implementsTypes.add(implementsType); + return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaClassDeclaration.Builder(name, implementsTypes, body, customArea, docComment); + } + public org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaClassDeclaration.Builder withBody(java.util.List<org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaClassBodyDeclaration> body) { return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaClassDeclaration.Builder(name, implementsTypes, body, customArea, docComment); } + public org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaClassDeclaration.Builder addBodyElement(org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaClassBodyDeclaration bodyElement) { + var body = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaClassBodyDeclaration>(this.body); + body.add(bodyElement); + return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaClassDeclaration.Builder(name, implementsTypes, body, customArea, docComment); + } + + public org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaClassDeclaration.Builder addBodyElement(org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaClassBodyDeclaration.Builder bodyElement) { + var body = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaClassBodyDeclaration>(this.body); + body.add(bodyElement.build()); + return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaClassDeclaration.Builder(name, implementsTypes, body, customArea, docComment); + } + public org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaClassDeclaration.Builder withCustomArea(org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaCustomArea customArea) { return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaClassDeclaration.Builder(name, implementsTypes, body, customArea, docComment); } diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaConstructorDeclaration.java b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaConstructorDeclaration.java index 772157c..b141f8d 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaConstructorDeclaration.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaConstructorDeclaration.java @@ -31,6 +31,18 @@ public record JavaConstructorDeclaration(org.zwobble.hobgoblin.compiler.output.l return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaConstructorDeclaration.Builder(typeName, visibility, params, body); } + public org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaConstructorDeclaration.Builder addParam(org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaParam param) { + var params = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaParam>(this.params); + params.add(param); + return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaConstructorDeclaration.Builder(typeName, visibility, params, body); + } + + public org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaConstructorDeclaration.Builder addParam(org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaParam.Builder param) { + var params = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaParam>(this.params); + params.add(param.build()); + return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaConstructorDeclaration.Builder(typeName, visibility, params, body); + } + public org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaConstructorDeclaration.Builder withBody(org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaBlock body) { return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaConstructorDeclaration.Builder(typeName, visibility, params, body); } diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaEnumDeclaration.java b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaEnumDeclaration.java index d626b12..5668bbd 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaEnumDeclaration.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaEnumDeclaration.java @@ -27,6 +27,18 @@ public record JavaEnumDeclaration(org.zwobble.hobgoblin.compiler.output.lang.jav return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaEnumDeclaration.Builder(name, constants, customArea, docComment); } + public org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaEnumDeclaration.Builder addConstant(org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaEnumConstant constant) { + var constants = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaEnumConstant>(this.constants); + constants.add(constant); + return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaEnumDeclaration.Builder(name, constants, customArea, docComment); + } + + public org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaEnumDeclaration.Builder addConstant(org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaEnumConstant.Builder constant) { + var constants = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaEnumConstant>(this.constants); + constants.add(constant.build()); + return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaEnumDeclaration.Builder(name, constants, customArea, docComment); + } + public org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaEnumDeclaration.Builder withCustomArea(org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaCustomArea customArea) { return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaEnumDeclaration.Builder(name, constants, customArea, docComment); } diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaInterfaceDeclaration.java b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaInterfaceDeclaration.java index aeec3a5..a00a080 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaInterfaceDeclaration.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaInterfaceDeclaration.java @@ -31,10 +31,28 @@ public record JavaInterfaceDeclaration(org.zwobble.hobgoblin.compiler.output.lan return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaInterfaceDeclaration.Builder(name, openness, permitsTypes, body, customArea, docComment); } + public org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaInterfaceDeclaration.Builder addPermitsType(org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaTypeRef permitsType) { + var permitsTypes = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaTypeRef>(this.permitsTypes); + permitsTypes.add(permitsType); + return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaInterfaceDeclaration.Builder(name, openness, permitsTypes, body, customArea, docComment); + } + public org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaInterfaceDeclaration.Builder withBody(java.util.List<org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaClassBodyDeclaration> body) { return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaInterfaceDeclaration.Builder(name, openness, permitsTypes, body, customArea, docComment); } + public org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaInterfaceDeclaration.Builder addBodyElement(org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaClassBodyDeclaration bodyElement) { + var body = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaClassBodyDeclaration>(this.body); + body.add(bodyElement); + return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaInterfaceDeclaration.Builder(name, openness, permitsTypes, body, customArea, docComment); + } + + public org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaInterfaceDeclaration.Builder addBodyElement(org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaClassBodyDeclaration.Builder bodyElement) { + var body = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaClassBodyDeclaration>(this.body); + body.add(bodyElement.build()); + return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaInterfaceDeclaration.Builder(name, openness, permitsTypes, body, customArea, docComment); + } + public org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaInterfaceDeclaration.Builder withCustomArea(org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaCustomArea customArea) { return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaInterfaceDeclaration.Builder(name, openness, permitsTypes, body, customArea, docComment); } diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaMethodCall.java b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaMethodCall.java index aee95c8..1905ee3 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaMethodCall.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaMethodCall.java @@ -35,6 +35,18 @@ public record JavaMethodCall(org.zwobble.hobgoblin.compiler.output.lang.java.ast return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaMethodCall.Builder(receiver, methodName, args); } + public org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaMethodCall.Builder addArg(org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaExpression arg) { + var args = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaExpression>(this.args); + args.add(arg); + return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaMethodCall.Builder(receiver, methodName, args); + } + + public org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaMethodCall.Builder addArg(org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaExpression.Builder arg) { + var args = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaExpression>(this.args); + args.add(arg.build()); + return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaMethodCall.Builder(receiver, methodName, args); + } + // Custom area start: org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaMethodCall.Builder body // Custom area end: org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaMethodCall.Builder body } diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaMethodDeclaration.java b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaMethodDeclaration.java index 248d19f..617a7e1 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaMethodDeclaration.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaMethodDeclaration.java @@ -39,6 +39,18 @@ public record JavaMethodDeclaration(org.zwobble.hobgoblin.compiler.output.lang.j return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaMethodDeclaration.Builder(name, visibility, kind, returnType, params, body); } + public org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaMethodDeclaration.Builder addParam(org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaParam param) { + var params = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaParam>(this.params); + params.add(param); + return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaMethodDeclaration.Builder(name, visibility, kind, returnType, params, body); + } + + public org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaMethodDeclaration.Builder addParam(org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaParam.Builder param) { + var params = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaParam>(this.params); + params.add(param.build()); + return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaMethodDeclaration.Builder(name, visibility, kind, returnType, params, body); + } + public org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaMethodDeclaration.Builder withBody(java.util.Optional<org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaBlock> body) { return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaMethodDeclaration.Builder(name, visibility, kind, returnType, params, body); } diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaNewExpression.java b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaNewExpression.java index e5f174f..8447e93 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaNewExpression.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaNewExpression.java @@ -23,6 +23,18 @@ public record JavaNewExpression(org.zwobble.hobgoblin.compiler.output.lang.java. return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaNewExpression.Builder(type, args); } + public org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaNewExpression.Builder addArg(org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaExpression arg) { + var args = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaExpression>(this.args); + args.add(arg); + return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaNewExpression.Builder(type, args); + } + + public org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaNewExpression.Builder addArg(org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaExpression.Builder arg) { + var args = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaExpression>(this.args); + args.add(arg.build()); + return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaNewExpression.Builder(type, args); + } + // Custom area start: org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaNewExpression.Builder body // Custom area end: org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaNewExpression.Builder body } diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaPackageName.java b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaPackageName.java index 59983e2..a55e64c 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaPackageName.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaPackageName.java @@ -21,6 +21,18 @@ public record JavaPackageName(java.util.List<org.zwobble.hobgoblin.compiler.outp return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaPackageName.Builder(parts); } + public org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaPackageName.Builder addPart(org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaIdentifier part) { + var parts = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaIdentifier>(this.parts); + parts.add(part); + return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaPackageName.Builder(parts); + } + + public org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaPackageName.Builder addPart(org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaIdentifier.Builder part) { + var parts = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaIdentifier>(this.parts); + parts.add(part.build()); + return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaPackageName.Builder(parts); + } + // Custom area start: org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaPackageName.Builder body // Custom area end: org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaPackageName.Builder body } diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaRecordDeclaration.java b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaRecordDeclaration.java index 07734c8..d4bbc65 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaRecordDeclaration.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaRecordDeclaration.java @@ -27,14 +27,44 @@ public record JavaRecordDeclaration(org.zwobble.hobgoblin.compiler.output.lang.j return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaRecordDeclaration.Builder(name, components, implementsTypes, body, customArea, docComment); } + public org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaRecordDeclaration.Builder addComponent(org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaRecordComponent component) { + var components = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaRecordComponent>(this.components); + components.add(component); + return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaRecordDeclaration.Builder(name, components, implementsTypes, body, customArea, docComment); + } + + public org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaRecordDeclaration.Builder addComponent(org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaRecordComponent.Builder component) { + var components = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaRecordComponent>(this.components); + components.add(component.build()); + return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaRecordDeclaration.Builder(name, components, implementsTypes, body, customArea, docComment); + } + public org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaRecordDeclaration.Builder withImplementsTypes(java.util.List<org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaTypeRef> implementsTypes) { return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaRecordDeclaration.Builder(name, components, implementsTypes, body, customArea, docComment); } + public org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaRecordDeclaration.Builder addImplementsType(org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaTypeRef implementsType) { + var implementsTypes = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaTypeRef>(this.implementsTypes); + implementsTypes.add(implementsType); + return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaRecordDeclaration.Builder(name, components, implementsTypes, body, customArea, docComment); + } + public org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaRecordDeclaration.Builder withBody(java.util.List<org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaClassBodyDeclaration> body) { return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaRecordDeclaration.Builder(name, components, implementsTypes, body, customArea, docComment); } + public org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaRecordDeclaration.Builder addBodyElement(org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaClassBodyDeclaration bodyElement) { + var body = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaClassBodyDeclaration>(this.body); + body.add(bodyElement); + return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaRecordDeclaration.Builder(name, components, implementsTypes, body, customArea, docComment); + } + + public org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaRecordDeclaration.Builder addBodyElement(org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaClassBodyDeclaration.Builder bodyElement) { + var body = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaClassBodyDeclaration>(this.body); + body.add(bodyElement.build()); + return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaRecordDeclaration.Builder(name, components, implementsTypes, body, customArea, docComment); + } + public org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaRecordDeclaration.Builder withCustomArea(org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaCustomArea customArea) { return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaRecordDeclaration.Builder(name, components, implementsTypes, body, customArea, docComment); } diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaStaticMethodCall.java b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaStaticMethodCall.java index f8ae452..4377976 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaStaticMethodCall.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/java/ast/JavaStaticMethodCall.java @@ -31,6 +31,18 @@ public record JavaStaticMethodCall(org.zwobble.hobgoblin.compiler.output.lang.ja return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaStaticMethodCall.Builder(type, methodName, args); } + public org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaStaticMethodCall.Builder addArg(org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaExpression arg) { + var args = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaExpression>(this.args); + args.add(arg); + return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaStaticMethodCall.Builder(type, methodName, args); + } + + public org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaStaticMethodCall.Builder addArg(org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaExpression.Builder arg) { + var args = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaExpression>(this.args); + args.add(arg.build()); + return new org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaStaticMethodCall.Builder(type, methodName, args); + } + // Custom area start: org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaStaticMethodCall.Builder body // Custom area end: org.zwobble.hobgoblin.compiler.output.lang.java.ast.JavaStaticMethodCall.Builder body } diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/rust/ast/RustEnum.java b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/rust/ast/RustEnum.java index 338bdb4..be3ae6a 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/rust/ast/RustEnum.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/rust/ast/RustEnum.java @@ -27,6 +27,18 @@ public record RustEnum(org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustI return new org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustEnum.Builder(name, variants, docComment); } + public org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustEnum.Builder addVariant(org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustEnumVariant variant) { + var variants = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustEnumVariant>(this.variants); + variants.add(variant); + return new org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustEnum.Builder(name, variants, docComment); + } + + public org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustEnum.Builder addVariant(org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustEnumVariant.Builder variant) { + var variants = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustEnumVariant>(this.variants); + variants.add(variant.build()); + return new org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustEnum.Builder(name, variants, docComment); + } + public org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustEnum.Builder withDocComment(org.zwobble.hobgoblin.compiler.ast.DocComment docComment) { return new org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustEnum.Builder(name, variants, docComment); } diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/rust/ast/RustEnumVariantTuple.java b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/rust/ast/RustEnumVariantTuple.java index a8b1e68..51ee445 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/rust/ast/RustEnumVariantTuple.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/rust/ast/RustEnumVariantTuple.java @@ -19,6 +19,18 @@ public record RustEnumVariantTuple(java.util.List<org.zwobble.hobgoblin.compiler return new org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustEnumVariantTuple.Builder(fields); } + public org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustEnumVariantTuple.Builder addField(org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustTupleField field) { + var fields = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustTupleField>(this.fields); + fields.add(field); + return new org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustEnumVariantTuple.Builder(fields); + } + + public org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustEnumVariantTuple.Builder addField(org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustTupleField.Builder field) { + var fields = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustTupleField>(this.fields); + fields.add(field.build()); + return new org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustEnumVariantTuple.Builder(fields); + } + // Custom area start: org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustEnumVariantTuple.Builder body // Custom area end: org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustEnumVariantTuple.Builder body } diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/rust/ast/RustModule.java b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/rust/ast/RustModule.java index e40895e..0f142bb 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/rust/ast/RustModule.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/rust/ast/RustModule.java @@ -19,10 +19,34 @@ public record RustModule(java.util.List<org.zwobble.hobgoblin.compiler.output.la return new org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustModule.Builder(name, items); } + public org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustModule.Builder addNameElement(org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustIdentifier nameElement) { + var name = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustIdentifier>(this.name); + name.add(nameElement); + return new org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustModule.Builder(name, items); + } + + public org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustModule.Builder addNameElement(org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustIdentifier.Builder nameElement) { + var name = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustIdentifier>(this.name); + name.add(nameElement.build()); + return new org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustModule.Builder(name, items); + } + public org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustModule.Builder withItems(java.util.List<org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustItem> items) { return new org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustModule.Builder(name, items); } + public org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustModule.Builder addItem(org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustItem item) { + var items = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustItem>(this.items); + items.add(item); + return new org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustModule.Builder(name, items); + } + + public org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustModule.Builder addItem(org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustItem.Builder item) { + var items = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustItem>(this.items); + items.add(item.build()); + return new org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustModule.Builder(name, items); + } + // Custom area start: org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustModule.Builder body // Custom area end: org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustModule.Builder body } diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/rust/ast/RustStructStruct.java b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/rust/ast/RustStructStruct.java index 5b02a96..4eba76a 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/rust/ast/RustStructStruct.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/rust/ast/RustStructStruct.java @@ -27,6 +27,18 @@ public record RustStructStruct(org.zwobble.hobgoblin.compiler.output.lang.rust.a return new org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustStructStruct.Builder(name, fields, docComment); } + public org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustStructStruct.Builder addField(org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustStructField field) { + var fields = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustStructField>(this.fields); + fields.add(field); + return new org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustStructStruct.Builder(name, fields, docComment); + } + + public org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustStructStruct.Builder addField(org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustStructField.Builder field) { + var fields = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustStructField>(this.fields); + fields.add(field.build()); + return new org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustStructStruct.Builder(name, fields, docComment); + } + public org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustStructStruct.Builder withDocComment(org.zwobble.hobgoblin.compiler.ast.DocComment docComment) { return new org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustStructStruct.Builder(name, fields, docComment); } diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/rust/ast/RustTypePath.java b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/rust/ast/RustTypePath.java index 7d56e5e..941fd61 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/rust/ast/RustTypePath.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/rust/ast/RustTypePath.java @@ -24,6 +24,18 @@ public record RustTypePath(java.util.List<org.zwobble.hobgoblin.compiler.output. return new org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustTypePath.Builder(segments); } + public org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustTypePath.Builder addSegment(org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustTypePathSegment segment) { + var segments = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustTypePathSegment>(this.segments); + segments.add(segment); + return new org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustTypePath.Builder(segments); + } + + public org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustTypePath.Builder addSegment(org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustTypePathSegment.Builder segment) { + var segments = new java.util.ArrayList<org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustTypePathSegment>(this.segments); + segments.add(segment.build()); + return new org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustTypePath.Builder(segments); + } + // Custom area start: org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustTypePath.Builder body // Custom area end: org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustTypePath.Builder body } |
