From 8ad682b242f84fc72499c9d0e1e7c4b0d585607e Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Sun, 5 Jul 2026 11:03:07 +0100 Subject: Include type name in encode/decode method names --- .../src/test/java/org/zwobble/example/Transient0Tests.java | 4 ++-- .../generators/javatransient0/JavaTransient0Generator.java | 14 ++++++++++---- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/examples/10-transient-0/output/java-junit/src/test/java/org/zwobble/example/Transient0Tests.java b/examples/10-transient-0/output/java-junit/src/test/java/org/zwobble/example/Transient0Tests.java index b9b1c78..232ecf1 100644 --- a/examples/10-transient-0/output/java-junit/src/test/java/org/zwobble/example/Transient0Tests.java +++ b/examples/10-transient-0/output/java-junit/src/test/java/org/zwobble/example/Transient0Tests.java @@ -14,11 +14,11 @@ public class Transient0Tests { var value = new StructWithInt32(10, 25); var outputStream = new ByteArrayOutputStream(); - HobgoblinTransient0Data.encode(value, outputStream); + HobgoblinTransient0Data.encodeStructWithInt32(value, outputStream); var bytes = outputStream.toByteArray(); var inputStream = new ByteArrayInputStream(bytes); - var decodedValue = HobgoblinTransient0Data.decode(inputStream); + var decodedValue = HobgoblinTransient0Data.decodeStructWithInt32(inputStream); Assertions.assertEquals(value, decodedValue); } diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/javatransient0/JavaTransient0Generator.java b/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/javatransient0/JavaTransient0Generator.java index 0837855..ee35ebc 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/javatransient0/JavaTransient0Generator.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/javatransient0/JavaTransient0Generator.java @@ -23,8 +23,6 @@ import java.util.stream.Stream; public class JavaTransient0Generator implements Generator { public static final String NAME = "java-transient-0"; - private static final JavaIdentifier ENCODE_METHOD_NAME = JavaIdentifier.of("encode"); - private static final JavaIdentifier DECODE_METHOD_NAME = JavaIdentifier.of("decode"); private static final JavaIdentifier VALUE_NAME = JavaIdentifier.of("value"); private static final JavaIdentifier OUTPUT_STREAM_NAME = JavaIdentifier.of("outputStream"); private static final JavaIdentifier INPUT_STREAM_NAME = JavaIdentifier.of("inputStream"); @@ -117,7 +115,7 @@ public class JavaTransient0Generator implements Generator { yield Stream.of( new JavaMethodDeclaration( - ENCODE_METHOD_NAME, + encodeMethodName(structDefinition.type()), JavaVisibility.PUBLIC, JavaMethodKind.STATIC, JavaTypeRef.VOID, @@ -143,7 +141,7 @@ public class JavaTransient0Generator implements Generator { ) ), new JavaMethodDeclaration( - DECODE_METHOD_NAME, + decodeMethodName(structDefinition.type()), JavaVisibility.PUBLIC, JavaMethodKind.STATIC, structJavaTypeRef, @@ -300,6 +298,14 @@ public class JavaTransient0Generator implements Generator { return statements.stream(); } + private JavaIdentifier encodeMethodName(StructType type) { + return this.javaGenerator.generateFieldName("encode" + type.name()); + } + + private JavaIdentifier decodeMethodName(StructType type) { + return this.javaGenerator.generateFieldName("decode" + type.name()); + } + private static class Context { private final TypesInfo typesInfo; -- cgit v1.2.3