diff options
Diffstat (limited to 'src/main/java/org')
3 files changed, 7 insertions, 3 deletions
diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/rust/RustWriter.java b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/rust/RustWriter.java index fd3b8f8..665a056 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/rust/RustWriter.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/rust/RustWriter.java @@ -65,6 +65,10 @@ public class RustWriter implements AutoCloseable { writeEnum(enum_); } + case RustFunction function -> { + writeFunction(function); + } + case RustInherentImpl inherentImpl -> { writeInherentImpl(inherentImpl); } diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/rust/ast/RustFunction.java b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/rust/ast/RustFunction.java index be92d98..1f90e88 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/rust/ast/RustFunction.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/rust/ast/RustFunction.java @@ -5,12 +5,12 @@ package org.zwobble.hobgoblin.compiler.output.lang.rust.ast; // Custom area start: org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustFunction imports // Custom area end: org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustFunction imports -public record RustFunction(org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustIdentifier name, java.util.List<org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustFunctionParam> params, java.util.Optional<org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustType> returnType, java.util.Optional<org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustBlockExpression> body) implements org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustAssociatedItem { +public record RustFunction(org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustIdentifier name, java.util.List<org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustFunctionParam> params, java.util.Optional<org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustType> returnType, java.util.Optional<org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustBlockExpression> body) implements org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustItem, org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustAssociatedItem { public static org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustFunction.Builder arbitrary() { return new org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustFunction.Builder(org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustIdentifier.arbitrary().build(), java.util.List.of(), java.util.Optional.empty(), java.util.Optional.empty()); } - public record Builder(org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustIdentifier name, java.util.List<org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustFunctionParam> params, java.util.Optional<org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustType> returnType, java.util.Optional<org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustBlockExpression> body) implements org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustAssociatedItem.Builder { + public record Builder(org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustIdentifier name, java.util.List<org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustFunctionParam> params, java.util.Optional<org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustType> returnType, java.util.Optional<org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustBlockExpression> body) implements org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustItem.Builder, org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustAssociatedItem.Builder { public org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustFunction build() { return new org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustFunction(name, params, returnType, body); } diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/rust/ast/RustItem.java b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/rust/ast/RustItem.java index 5385b88..9ade576 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/rust/ast/RustItem.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/rust/ast/RustItem.java @@ -5,7 +5,7 @@ package org.zwobble.hobgoblin.compiler.output.lang.rust.ast; // Custom area start: org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustItem imports // Custom area end: org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustItem imports -public sealed interface RustItem permits org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustEnum, org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustInherentImpl, org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustStructStruct, org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustTraitImpl { +public sealed interface RustItem permits org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustEnum, org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustFunction, org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustInherentImpl, org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustStructStruct, org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustTraitImpl { public interface Builder { public org.zwobble.hobgoblin.compiler.output.lang.rust.ast.RustItem build(); |
