summaryrefslogtreecommitdiff
path: root/examples/08-custom-code/output/rust/src
diff options
context:
space:
mode:
Diffstat (limited to 'examples/08-custom-code/output/rust/src')
-rw-r--r--examples/08-custom-code/output/rust/src/gen/shapes.rs5
-rw-r--r--examples/08-custom-code/output/rust/src/main.rs8
-rw-r--r--examples/08-custom-code/output/rust/src/shapes.rs7
3 files changed, 20 insertions, 0 deletions
diff --git a/examples/08-custom-code/output/rust/src/gen/shapes.rs b/examples/08-custom-code/output/rust/src/gen/shapes.rs
new file mode 100644
index 0000000..b85ad8c
--- /dev/null
+++ b/examples/08-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/08-custom-code/output/rust/src/main.rs b/examples/08-custom-code/output/rust/src/main.rs
new file mode 100644
index 0000000..e30443e
--- /dev/null
+++ b/examples/08-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/08-custom-code/output/rust/src/shapes.rs b/examples/08-custom-code/output/rust/src/shapes.rs
new file mode 100644
index 0000000..f806bbb
--- /dev/null
+++ b/examples/08-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
+ }
+}