diff options
| author | Michael Williamson <mike@zwobble.org> | 2026-08-29 23:27:59 +0100 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2026-08-29 23:27:59 +0100 |
| commit | e5b0b62785e75d19b4d852712cb6a72ea77429d2 (patch) | |
| tree | d984963c54b6703a2eaaefcc7a7ce0633e7de1e4 /examples | |
| parent | 39d0b5105f474dd044022d2bb243eee203a93bfd (diff) | |
Don't derive Hash for generated Rust types
Diffstat (limited to 'examples')
17 files changed, 53 insertions, 53 deletions
diff --git a/examples/01-struct/output/rust/src/point.rs b/examples/01-struct/output/rust/src/point.rs index 6865556..4ba05b1 100644 --- a/examples/01-struct/output/rust/src/point.rs +++ b/examples/01-struct/output/rust/src/point.rs @@ -1,14 +1,14 @@ // Generated by hobgoblin. /// A straight line from one point to another. -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct Line { pub start: crate::point::Point, pub end: crate::point::Point, } /// A 2D point. -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct Point { pub x: ::core::primitive::i32, pub y: ::core::primitive::i32, diff --git a/examples/02-struct-singleton/output/rust/src/point.rs b/examples/02-struct-singleton/output/rust/src/point.rs index 53af3dd..3c70196 100644 --- a/examples/02-struct-singleton/output/rust/src/point.rs +++ b/examples/02-struct-singleton/output/rust/src/point.rs @@ -1,4 +1,4 @@ // Generated by hobgoblin. -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct Origin; diff --git a/examples/03-struct-generic/output/rust/src/point.rs b/examples/03-struct-generic/output/rust/src/point.rs index ae6a1ee..a6c6615 100644 --- a/examples/03-struct-generic/output/rust/src/point.rs +++ b/examples/03-struct-generic/output/rust/src/point.rs @@ -1,40 +1,40 @@ // Generated by hobgoblin. /// A set of drawings. -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, 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)] +#[derive(Clone, Debug, 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)] +#[derive(Clone, Debug, PartialEq)] pub struct LineDrawing<TPoint> { pub lines: ::std::vec::Vec::<crate::point::Line::<TPoint>>, } /// A cubic Bezier curve. -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, 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)] +#[derive(Clone, Debug, PartialEq)] pub struct Line<TPoint> { pub start: TPoint, pub end: TPoint, } /// A 2D point. -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct Point2D { pub x: ::core::primitive::i32, pub y: ::core::primitive::i32, diff --git a/examples/04-sum/output/rust/src/shapes.rs b/examples/04-sum/output/rust/src/shapes.rs index 2712e41..9850dde 100644 --- a/examples/04-sum/output/rust/src/shapes.rs +++ b/examples/04-sum/output/rust/src/shapes.rs @@ -1,7 +1,7 @@ // Generated by hobgoblin. /// A 2D shape. -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub enum Shape { Rectangle(crate::shapes::Rectangle), Triangle(crate::shapes::Triangle), @@ -19,13 +19,13 @@ impl ::std::convert::From::<crate::shapes::Triangle> for crate::shapes::Shape { } } -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct Rectangle { pub width: ::core::primitive::i32, pub height: ::core::primitive::i32, } -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct Triangle { pub width: ::core::primitive::i32, pub height: ::core::primitive::i32, diff --git a/examples/05-box/output/rust/src/point.rs b/examples/05-box/output/rust/src/point.rs index 9629fc1..1c1062f 100644 --- a/examples/05-box/output/rust/src/point.rs +++ b/examples/05-box/output/rust/src/point.rs @@ -1,14 +1,14 @@ // Generated by hobgoblin. /// A straight line from one point to another. -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct Line { pub start: ::std::boxed::Box::<crate::point::Point>, pub end: ::std::boxed::Box::<crate::point::Point>, } /// A 2D point. -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct Point { pub x: ::core::primitive::i32, pub y: ::core::primitive::i32, diff --git a/examples/06-inductive-data-types/output/rust/src/arithmetic.rs b/examples/06-inductive-data-types/output/rust/src/arithmetic.rs index 248d2c1..e73fb87 100644 --- a/examples/06-inductive-data-types/output/rust/src/arithmetic.rs +++ b/examples/06-inductive-data-types/output/rust/src/arithmetic.rs @@ -1,6 +1,6 @@ // Generated by hobgoblin. -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub enum Expression { Add(::std::boxed::Box::<crate::arithmetic::Add>), Const(crate::arithmetic::Const), @@ -18,13 +18,13 @@ impl ::std::convert::From::<crate::arithmetic::Const> for crate::arithmetic::Exp } } -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct Add { pub left: crate::arithmetic::Expression, pub right: crate::arithmetic::Expression, } -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct Const { pub value: ::core::primitive::i32, } diff --git a/examples/07-inductive-data-types-separate-namespaces/output/rust/src/data/a.rs b/examples/07-inductive-data-types-separate-namespaces/output/rust/src/data/a.rs index 1ec823f..3796251 100644 --- a/examples/07-inductive-data-types-separate-namespaces/output/rust/src/data/a.rs +++ b/examples/07-inductive-data-types-separate-namespaces/output/rust/src/data/a.rs @@ -1,6 +1,6 @@ // Generated by hobgoblin. -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub enum A { A1(::std::boxed::Box::<crate::data::a::A1>), } @@ -11,7 +11,7 @@ impl ::std::convert::From::<crate::data::a::A1> for crate::data::a::A { } } -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct A1 { pub b: ::std::option::Option::<crate::data::b::B>, } diff --git a/examples/07-inductive-data-types-separate-namespaces/output/rust/src/data/b.rs b/examples/07-inductive-data-types-separate-namespaces/output/rust/src/data/b.rs index 38bf8fc..1968eb3 100644 --- a/examples/07-inductive-data-types-separate-namespaces/output/rust/src/data/b.rs +++ b/examples/07-inductive-data-types-separate-namespaces/output/rust/src/data/b.rs @@ -1,6 +1,6 @@ // Generated by hobgoblin. -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct B { pub a: ::std::option::Option::<crate::data::a::A>, } diff --git a/examples/09-list/output/rust/src/point.rs b/examples/09-list/output/rust/src/point.rs index ebadf95..7f23478 100644 --- a/examples/09-list/output/rust/src/point.rs +++ b/examples/09-list/output/rust/src/point.rs @@ -1,11 +1,11 @@ // Generated by hobgoblin. -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct Path { pub points: ::std::vec::Vec::<crate::point::Point>, } -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct Point { pub x: ::core::primitive::i32, pub y: ::core::primitive::i32, diff --git a/examples/10-native-type/output/rust/src/gen/point.rs b/examples/10-native-type/output/rust/src/gen/point.rs index 8561605..ec51f56 100644 --- a/examples/10-native-type/output/rust/src/gen/point.rs +++ b/examples/10-native-type/output/rust/src/gen/point.rs @@ -1,7 +1,7 @@ // Generated by hobgoblin. /// A straight line from one point to another. -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct Line { pub start: crate::point::Point, pub end: crate::point::Point, diff --git a/examples/11-native-type-custom-config/output/rust/src/point.rs b/examples/11-native-type-custom-config/output/rust/src/point.rs index f25a76f..e12c12d 100644 --- a/examples/11-native-type-custom-config/output/rust/src/point.rs +++ b/examples/11-native-type-custom-config/output/rust/src/point.rs @@ -1,7 +1,7 @@ // Generated by hobgoblin. /// A straight line from one point to another. -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct Line { pub start: crate::Point, pub end: crate::Point, diff --git a/examples/12-native-type-generic/output/rust/src/gen/map.rs b/examples/12-native-type-generic/output/rust/src/gen/map.rs index 5d9c837..59fb30f 100644 --- a/examples/12-native-type-generic/output/rust/src/gen/map.rs +++ b/examples/12-native-type-generic/output/rust/src/gen/map.rs @@ -1,6 +1,6 @@ // Generated by hobgoblin. -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct X { pub map: ::std::collections::BTreeMap::<::std::string::String, ::core::primitive::i32>, } diff --git a/examples/13-shared/output/rust/src/point.rs b/examples/13-shared/output/rust/src/point.rs index 7bc470a..82df631 100644 --- a/examples/13-shared/output/rust/src/point.rs +++ b/examples/13-shared/output/rust/src/point.rs @@ -1,14 +1,14 @@ // Generated by hobgoblin. /// A straight line from one point to another. -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct Line { pub start: ::std::sync::Arc::<crate::point::Point>, pub end: ::std::sync::Arc::<crate::point::Point>, } /// A 2D point. -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct Point { pub x: ::core::primitive::i32, pub y: ::core::primitive::i32, diff --git a/examples/14-custom-code/output/rust/src/gen/shapes.rs b/examples/14-custom-code/output/rust/src/gen/shapes.rs index d1582ad..1dd1270 100644 --- a/examples/14-custom-code/output/rust/src/gen/shapes.rs +++ b/examples/14-custom-code/output/rust/src/gen/shapes.rs @@ -1,6 +1,6 @@ // Generated by hobgoblin. -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct Square { pub width: ::core::primitive::i32, } diff --git a/examples/15-imports/output/rust/src/line.rs b/examples/15-imports/output/rust/src/line.rs index 8561605..ec51f56 100644 --- a/examples/15-imports/output/rust/src/line.rs +++ b/examples/15-imports/output/rust/src/line.rs @@ -1,7 +1,7 @@ // Generated by hobgoblin. /// A straight line from one point to another. -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct Line { pub start: crate::point::Point, pub end: crate::point::Point, diff --git a/examples/15-imports/output/rust/src/point.rs b/examples/15-imports/output/rust/src/point.rs index 6d9b010..22f5389 100644 --- a/examples/15-imports/output/rust/src/point.rs +++ b/examples/15-imports/output/rust/src/point.rs @@ -1,7 +1,7 @@ // Generated by hobgoblin. /// A 2D point. -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct Point { pub x: ::core::primitive::i32, pub y: ::core::primitive::i32, diff --git a/examples/16-transient-0/output/rust/src/gen/data.rs b/examples/16-transient-0/output/rust/src/gen/data.rs index fe67736..63cdda5 100644 --- a/examples/16-transient-0/output/rust/src/gen/data.rs +++ b/examples/16-transient-0/output/rust/src/gen/data.rs @@ -1,63 +1,63 @@ // Generated by hobgoblin. -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct StructSingleton; -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct StructWithBool { pub a: ::core::primitive::bool, pub b: ::core::primitive::bool, } -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct StructWithInt8 { pub a: ::core::primitive::i8, pub b: ::core::primitive::i8, } -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct StructWithInt32 { pub a: ::core::primitive::i32, pub b: ::core::primitive::i32, } -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct StructWithInt64 { pub a: ::core::primitive::i64, pub b: ::core::primitive::i64, } -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct StructWithString { pub a: ::std::string::String, pub b: ::std::string::String, } -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct StructWithStruct { pub inner: crate::data::StructWithInt32, pub c: ::core::primitive::i32, } -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct GenericStruct<A, B> { pub a: A, pub b: B, } -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct StructWithGenericStruct { pub a: crate::data::GenericStruct::<::core::primitive::i32, ::std::string::String>, pub b: crate::data::GenericStruct::<::std::option::Option::<::std::string::String>, crate::data::GenericStruct::<::std::option::Option::<::std::string::String>, crate::data::GenericStruct::<::std::string::String, ::std::string::String>>>, } -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct StructWithList { pub a: ::std::vec::Vec::<::core::primitive::i64>, pub b: ::std::vec::Vec::<crate::data::StructWithInt32>, } -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct StructWithOption { pub a: ::std::option::Option::<::core::primitive::i64>, pub b: ::std::option::Option::<crate::data::StructWithInt32>, @@ -70,13 +70,13 @@ pub enum EnumWithVariants { Two, } -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct StructWithEnum { pub inner: crate::data::EnumWithVariants, pub c: ::core::primitive::i32, } -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub enum SumWithVariants { VariantOne(crate::data::VariantOne), VariantTwo(crate::data::VariantTwo), @@ -94,17 +94,17 @@ impl ::std::convert::From::<crate::data::VariantTwo> for crate::data::SumWithVar } } -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct VariantOne { pub a: ::core::primitive::i32, } -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct VariantTwo { pub a: ::core::primitive::i64, } -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub enum SumWithBoxedVariants { VariantOne(::std::boxed::Box::<crate::data::VariantOne>), VariantTwo(::std::boxed::Box::<crate::data::VariantTwo>), @@ -122,41 +122,41 @@ impl ::std::convert::From::<crate::data::VariantTwo> for crate::data::SumWithBox } } -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct StructWithSum { pub inner: crate::data::SumWithVariants, pub b: ::core::primitive::i32, } -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct StructWithNative { pub a: crate::data::Native, } -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct StructWithGenericNative { pub a: crate::data::GenericNative::<::core::primitive::i32, ::std::string::String>, pub b: crate::data::GenericNative::<::std::option::Option::<::std::string::String>, crate::data::GenericNative::<::std::option::Option::<::std::string::String>, crate::data::GenericNative::<::std::string::String, ::std::string::String>>>, } -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct StructWithBox { pub inner: ::std::boxed::Box::<crate::data::StructWithInt32>, } -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct StructWithListOfShared { pub inner: ::std::vec::Vec::<::std::sync::Arc::<crate::data::StructWithInt32>>, } -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct StructWithDifferentSharedTypes { pub a: ::std::sync::Arc::<crate::data::StructWithInt32>, pub b: ::std::sync::Arc::<crate::data::StructWithInt64>, pub c: ::std::sync::Arc::<crate::data::StructWithInt32>, } -#[derive(Clone, Debug, Hash, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub struct StructWithSharedSumAndVariant { pub a: ::std::sync::Arc::<crate::data::SumWithVariants>, pub b: ::std::sync::Arc::<crate::data::VariantOne>, |
