| namespace keyfield.sample; |
| |
| struct Baz { |
| a: [uint8:4] (key); // A fixed-sized array of uint8 as a Key |
| b: uint8 ; |
| } |
| |
| struct Bar { |
| a: [float:3] (key); // A fixed-sized array of float as a Key |
| b: uint8; |
| } |
| |
| struct Color { |
| rgb: [float:3] (key); |
| tag: uint8; |
| } |
| |
| struct Apple { |
| tag: uint8; |
| color: Color(key); |
| } |
| |
| struct Fruit { |
| a: Apple (key); |
| b: uint8; |
| } |
| |
| struct Rice { |
| origin: [uint8:3]; |
| quantity: uint32; |
| } |
| |
| struct Grain { |
| a: [Rice:3] (key); |
| tag: uint8; |
| } |
| |
| table FooTable { |
| a: int; |
| b: int; |
| c: string (key); |
| d: [Baz]; |
| e: [Bar]; |
| f: [Apple]; |
| g: [Fruit]; |
| h: [Grain]; |
| } |
| root_type FooTable; |
| |