diff options
| author | Michael Williamson <mike@zwobble.org> | 2026-07-26 12:08:19 +0100 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2026-07-26 12:08:19 +0100 |
| commit | 77b35839cb56bbe8cdbc1430abe53cdca21f437b (patch) | |
| tree | feeaf1528319c0d2e18805230d27760850a60c0c /src/main/java | |
| parent | a9f618b86908aaff180573907f9096537aa839eb (diff) | |
Extract constants for std::io errors
Diffstat (limited to 'src/main/java')
2 files changed, 5 insertions, 2 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 b34206e..15e9e9d 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 @@ -1071,9 +1071,9 @@ public class RustTransient0Generator implements Generator { return mapErr( result, error -> new RustCallExpression( - RustPath.global("std", "io", "Error", "new"), + RustTypes.IO_ERROR.addSegment(RustPathSegment.of("new")), List.of( - RustPath.global("std", "io", "ErrorKind", "InvalidData"), + RustTypes.IO_ERROR_KIND_INVALID_DATA, createSubError.apply(error) ) ) diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/rust/RustTypes.java b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/rust/RustTypes.java index 1dea2b0..3b55420 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/rust/RustTypes.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/output/lang/rust/RustTypes.java @@ -31,6 +31,9 @@ public class RustTypes { .withArgs(List.of(keyType, valueType)); } + public static RustPath IO_ERROR = RustPath.global("std", "io", "Error"); + public static RustPath IO_ERROR_KIND = RustPath.global("std", "io", "ErrorKind"); + public static RustPath IO_ERROR_KIND_INVALID_DATA = IO_ERROR_KIND.addSegment(RustPathSegment.of("InvalidData")); public static RustPath IO_RESULT = RustPath.global("std", "io", "Result"); public static RustPath IO_RESULT_OK = IO_RESULT.addSegment(RustPathSegment.of("Ok")); |
