diff options
| author | Michael Williamson <mike@zwobble.org> | 2026-08-14 11:07:46 +0100 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2026-08-14 11:07:46 +0100 |
| commit | 6eb866fe831d85fbc5a492df711afcda26b2df6f (patch) | |
| tree | ef43539883b91a238f1826ce5183e997fdfc4b85 /examples/03-struct-generic/output/rust/src/point.rs | |
| parent | 00cfa7a56b31f0b629a54a77e1934d25471f8156 (diff) | |
Support generic structs in rust-typesmain
Diffstat (limited to 'examples/03-struct-generic/output/rust/src/point.rs')
| -rw-r--r-- | examples/03-struct-generic/output/rust/src/point.rs | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/examples/03-struct-generic/output/rust/src/point.rs b/examples/03-struct-generic/output/rust/src/point.rs new file mode 100644 index 0000000..ae6a1ee --- /dev/null +++ b/examples/03-struct-generic/output/rust/src/point.rs @@ -0,0 +1,41 @@ +// Generated by hobgoblin. + +/// A set of drawings. +#[derive(Clone, Debug, Hash, PartialEq)] +pub struct OwnedLineDrawing<TPoint> { + pub drawing: crate::point::LineDrawing::<TPoint>, + pub owner: ::std::string::String, +} + +/// A 2D drawing made up of straight lines. +#[derive(Clone, Debug, Hash, PartialEq)] +pub struct LineDrawing2D { + pub lines: ::std::vec::Vec::<crate::point::Line::<crate::point::Point2D>>, +} + +/// A drawing made up of straight lines. +#[derive(Clone, Debug, Hash, PartialEq)] +pub struct LineDrawing<TPoint> { + pub lines: ::std::vec::Vec::<crate::point::Line::<TPoint>>, +} + +/// A cubic Bezier curve. +#[derive(Clone, Debug, Hash, PartialEq)] +pub struct BezierCurve<TPoint> { + pub start: crate::point::Line::<TPoint>, + pub end: crate::point::Line::<TPoint>, +} + +/// A straight line from one point to another. +#[derive(Clone, Debug, Hash, PartialEq)] +pub struct Line<TPoint> { + pub start: TPoint, + pub end: TPoint, +} + +/// A 2D point. +#[derive(Clone, Debug, Hash, PartialEq)] +pub struct Point2D { + pub x: ::core::primitive::i32, + pub y: ::core::primitive::i32, +} |
