| library test; | |
| struct Point { | |
| int32 x; | |
| int32 y; | |
| }; | |
| enum Direction : uint32 { | |
| Up = 0; | |
| Down = 1; | |
| Left = 2; | |
| Right = 3; | |
| }; | |
| struct ArraysOfPoints { | |
| array<Point>:4 p; | |
| ArraysOfPoints? more_points; | |
| }; | |
| struct VectorOfPoints { | |
| vector<Point>:4 p; | |
| }; | |
| struct VectorOfDirections { | |
| vector<Direction>:4 d; | |
| }; | |
| union Points { | |
| Point one_point; | |
| ArraysOfPoints many_points; | |
| }; | |
| const uint32 NumberOfDirections = 4; | |
| interface Drawing { | |
| 1: Draw(Point p, Direction d); | |
| 2: DrawLots(Points ps); | |
| 3: -> DrawSucceeded(uint32 draws); | |
| }; |