Rework test for binary API union sizes
[govpp.git] / binapigen / vppapi / testdata / union.api.json
1 {
2   "services": [],
3   "vl_api_version": "0x1db2ece9",
4   "enums": [
5     [
6       "enum1",
7       [
8         "ENUM_1_VALUE_1",
9         1
10       ],
11       [
12         "ENUM_1_VALUE_2",
13         2
14       ],
15       {
16         "enumtype": "u16"
17       }
18     ],
19     [
20       "enum2",
21       [
22         "ENUM_2_VALUE_1",
23         10
24       ],
25       [
26         "ENUM_2_VALUE_2",
27         20
28       ],
29       {
30         "enumtype": "u32"
31       }
32     ]
33   ],
34   "messages": [],
35   "types": [
36     [
37       "type1",
38       [
39         "u8",
40         "field1",
41         16
42       ],
43       [
44         "u8",
45         "field2",
46         16
47       ]
48     ],
49     [
50       "type2",
51       [
52         "u16",
53         "field1"
54       ],
55       [
56         "u32",
57         "field2"
58       ],
59       [
60         "u32",
61         "field3"
62       ]
63     ],
64     [
65       "type3",
66       [
67         "u8",
68         "field1",
69         64
70       ]
71     ],
72     [
73       "type4",
74       [
75         "u8",
76         "field1"
77       ],
78       [
79         "u8",
80         "field2",
81         16
82       ]
83     ],
84     [
85       "type5",
86       [
87         "u32",
88         "field1"
89       ],
90       [
91         "union5",
92         "field2"
93       ]
94     ],
95     [
96       "type6",
97       [
98         "u16",
99         "field1"
100       ],
101       [
102         "u32",
103         "field2"
104       ],
105       [
106         "type4",
107         "field3"
108       ],
109       [
110         "u16",
111         "field4"
112       ],
113       [
114         "u32",
115         "field5"
116       ],
117       [
118         "u32",
119         "field6"
120       ]
121     ],
122     [
123       "complex_type",
124       [
125         "u32",
126         "field1"
127       ],
128       [
129         "u8",
130         "field2"
131       ],
132       [
133         "u8",
134         "field3"
135       ],
136       [
137         "u32",
138         "field4"
139       ],
140       [
141         "type5",
142         "field5"
143       ],
144       [
145         "type6",
146         "field6"
147       ]
148     ]
149   ],
150   "unions": [
151     [
152       "union1",
153       [
154         "vl_api_alias1_t",
155         "alias1"
156       ],
157       [
158         "vl_api_alias2_t",
159         "alias2"
160       ]
161     ],
162     [
163       "union2",
164       [
165         "vl_api_enum1_t",
166         "enum1"
167       ],
168       [
169         "vl_api_enum2_t",
170         "enum2"
171       ]
172     ],
173     [
174       "union3",
175       [
176         "vl_api_type1_t",
177         "type1"
178       ],
179       [
180         "vl_api_type2_t",
181         "type2"
182       ]
183     ],
184     [
185       "union4",
186       [
187         "vl_api_union1_t",
188         "union1"
189       ],
190       [
191         "vl_api_union2_t",
192         "union2"
193       ]
194     ],
195     [
196       "union5",
197       [
198         "vl_api_type1_t",
199         "type1"
200       ],
201       [
202         "vl_api_type3_t",
203         "type3"
204       ]
205     ],
206     [
207       "union6",
208       [
209         "vl_api_type1_t",
210         "type1"
211       ],
212       [
213         "vl_api_complex_type_t",
214         "type3"
215       ]
216     ]
217   ],
218   "aliases": {
219     "alias1": {
220       "type": "u8",
221       "length": 4
222     },
223     "alias2": {
224       "type": "u8",
225       "length": 16
226     },
227     "alias3": {
228       "type": "u32"
229     }
230   }
231 }