summaryrefslogtreecommitdiff
path: root/examples/06-custom-code/output/rust/src
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2026-07-02 11:11:03 +0100
committerMichael Williamson <mike@zwobble.org>2026-07-02 11:11:03 +0100
commita7e38a058c41068a6d6bae14e27c1803b1be384e (patch)
tree717d05fcb5153859b90c3e29fed4ea6af35a0a11 /examples/06-custom-code/output/rust/src
parent09dd58c172d70411e880450c8961a28dd127f76f (diff)
Extend custom code example to include Rust types output
Diffstat (limited to 'examples/06-custom-code/output/rust/src')
-rw-r--r--examples/06-custom-code/output/rust/src/gen/shapes.rs5
-rw-r--r--examples/06-custom-code/output/rust/src/main.rs8
-rw-r--r--examples/06-custom-code/output/rust/src/shapes.rs7
3 files changed, 20 insertions, 0 deletions
diff --git a/examples/06-custom-code/output/rust/src/gen/shapes.rs b/examples/06-custom-code/output/rust/src/gen/shapes.rs
new file mode 100644
index 0000000..b85ad8c
--- /dev/null
+++ b/examples/06-custom-code/output/rust/src/gen/shapes.rs
@@ -0,0 +1,5 @@
+// Generated by hobgoblin.
+
+pub struct Square {
+ pub width: i32,
+}
diff --git a/examples/06-custom-code/output/rust/src/main.rs b/examples/06-custom-code/output/rust/src/main.rs
new file mode 100644
index 0000000..e30443e
--- /dev/null
+++ b/examples/06-custom-code/output/rust/src/main.rs
@@ -0,0 +1,8 @@
+mod shapes;
+
+use shapes::Square;
+
+fn main() {
+ let square = Square { width: 10 };
+ assert!(square.area() == 100);
+}
diff --git a/examples/06-custom-code/output/rust/src/shapes.rs b/examples/06-custom-code/output/rust/src/shapes.rs
new file mode 100644
index 0000000..f806bbb
--- /dev/null
+++ b/examples/06-custom-code/output/rust/src/shapes.rs
@@ -0,0 +1,7 @@
+include!("gen/shapes.rs");
+
+impl Square {
+ pub fn area(&self) -> i32 {
+ self.width * self.width
+ }
+}