summaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2026-08-29 23:27:59 +0100
committerMichael Williamson <mike@zwobble.org>2026-08-29 23:27:59 +0100
commite5b0b62785e75d19b4d852712cb6a72ea77429d2 (patch)
treed984963c54b6703a2eaaefcc7a7ce0633e7de1e4 /examples
parent39d0b5105f474dd044022d2bb243eee203a93bfd (diff)
Don't derive Hash for generated Rust types
Diffstat (limited to 'examples')
-rw-r--r--examples/01-struct/output/rust/src/point.rs4
-rw-r--r--examples/02-struct-singleton/output/rust/src/point.rs2
-rw-r--r--examples/03-struct-generic/output/rust/src/point.rs12
-rw-r--r--examples/04-sum/output/rust/src/shapes.rs6
-rw-r--r--examples/05-box/output/rust/src/point.rs4
-rw-r--r--examples/06-inductive-data-types/output/rust/src/arithmetic.rs6
-rw-r--r--examples/07-inductive-data-types-separate-namespaces/output/rust/src/data/a.rs4
-rw-r--r--examples/07-inductive-data-types-separate-namespaces/output/rust/src/data/b.rs2
-rw-r--r--examples/09-list/output/rust/src/point.rs4
-rw-r--r--examples/10-native-type/output/rust/src/gen/point.rs2
-rw-r--r--examples/11-native-type-custom-config/output/rust/src/point.rs2
-rw-r--r--examples/12-native-type-generic/output/rust/src/gen/map.rs2
-rw-r--r--examples/13-shared/output/rust/src/point.rs4
-rw-r--r--examples/14-custom-code/output/rust/src/gen/shapes.rs2
-rw-r--r--examples/15-imports/output/rust/src/line.rs2
-rw-r--r--examples/15-imports/output/rust/src/point.rs2
-rw-r--r--examples/16-transient-0/output/rust/src/gen/data.rs46
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>,