From 698070f4cfda8137a087c4f786f4883ff4539444 Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Sun, 19 Jul 2026 21:53:16 +0100 Subject: Extract function to generate Rust unwrap() --- .../rusttransient0/RustTransient0Generator.java | 23 +++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/rusttransient0/RustTransient0Generator.java b/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/rusttransient0/RustTransient0Generator.java index da3c449..4c5eff1 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/rusttransient0/RustTransient0Generator.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/rusttransient0/RustTransient0Generator.java @@ -259,14 +259,11 @@ public class RustTransient0Generator implements Generator { generateReaderReadExact(RustPath.of(len)) ) ), - Optional.of(methodCall( + Optional.of(unwrap( new RustCallExpression( RustPath.global("std", "string", "String", "from_utf8"), List.of(RustPath.of(bytes)) - ), - // TODO: remove unwrap - RustIdentifier.of("unwrap"), - List.of() + ) )) ) ); @@ -865,13 +862,17 @@ public class RustTransient0Generator implements Generator { } private RustExpression tryIntoOrUnwrap(RustExpression value) { + return unwrap(methodCall( + value, + RustIdentifier.of("try_into"), + List.of() + )); + } + + private RustExpression unwrap(RustExpression value) { + // TODO: remove unwrap return methodCall( - methodCall( - value, - RustIdentifier.of("try_into"), - List.of() - ), - // TODO: remove unwrap + value, RustIdentifier.of("unwrap"), List.of() ); -- cgit v1.2.3