From 483caabcb688e71eaadf9ee93fca52483a9ea06d Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Fri, 4 Sep 2026 09:17:09 +0100 Subject: Reorder examples --- examples/14-struct-generic/src/point.hob | 33 ++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 examples/14-struct-generic/src/point.hob (limited to 'examples/14-struct-generic/src') diff --git a/examples/14-struct-generic/src/point.hob b/examples/14-struct-generic/src/point.hob new file mode 100644 index 0000000..5beed86 --- /dev/null +++ b/examples/14-struct-generic/src/point.hob @@ -0,0 +1,33 @@ +/// A set of drawings. +struct OwnedLineDrawing[TPoint] { + field drawing: LineDrawing[TPoint]; + field owner: String; +} + +/// A 2D drawing made up of straight lines. +struct LineDrawing2D { + field lines: List[Line[Point2D]]; +} + +/// A drawing made up of straight lines. +struct LineDrawing[TPoint] { + field lines: List[Line[TPoint]]; +} + +/// A cubic Bezier curve. +struct BezierCurve[TPoint] { + field start: Line[TPoint]; + field end: Line[TPoint]; +} + +/// A straight line from one point to another. +struct Line[TPoint] { + field start: TPoint; + field end: TPoint; +} + +/// A 2D point. +struct Point2D { + field x: Int32; + field y: Int32; +} -- cgit v1.2.3