1{
2 "$schema": "https://json-schema.org/draft/2019-09/schema",
3 "definitions": {
4 "MyGame_OtherNameSpace_FromInclude" : {
5 "type" : "string",
6 "enum": ["IncludeVal"]
7 },
8 "MyGame_Example_Color" : {
9 "type" : "string",
10 "enum": ["Red", "Green", "Blue"]
11 },
12 "MyGame_Example_Race" : {
13 "type" : "string",
14 "enum": ["None", "Human", "Dwarf", "Elf"]
15 },
16 "MyGame_Example_LongEnum" : {
17 "type" : "string",
18 "enum": ["LongOne", "LongTwo", "LongBig"]
19 },
20 "MyGame_Example_Any" : {
21 "type" : "string",
22 "enum": ["NONE", "Monster", "TestSimpleTableWithEnum", "MyGame_Example2_Monster"]
23 },
24 "MyGame_Example_AnyUniqueAliases" : {
25 "type" : "string",
26 "enum": ["NONE", "M", "TS", "M2"]
27 },
28 "MyGame_Example_AnyAmbiguousAliases" : {
29 "type" : "string",
30 "enum": ["NONE", "M1", "M2", "M3"]
31 },
32 "MyGame_OtherNameSpace_Unused" : {
33 "type" : "object",
34 "properties" : {
35 "a" : {
36 "type" : "integer", "minimum" : -2147483648, "maximum" : 2147483647
37 }
38 },
39 "additionalProperties" : false
40 },
41 "MyGame_OtherNameSpace_TableB" : {
42 "type" : "object",
43 "properties" : {
44 "a" : {
45 "$ref" : "#/definitions/TableA"
46 }
47 },
48 "additionalProperties" : false
49 },
50 "TableA" : {
51 "type" : "object",
52 "properties" : {
53 "b" : {
54 "$ref" : "#/definitions/MyGame_OtherNameSpace_TableB"
55 }
56 },
57 "additionalProperties" : false
58 },
59 "MyGame_InParentNamespace" : {
60 "type" : "object",
61 "properties" : {
62 },
63 "additionalProperties" : false
64 },
65 "MyGame_Example2_Monster" : {
66 "type" : "object",
67 "properties" : {
68 },
69 "additionalProperties" : false
70 },
71 "MyGame_Example_Test" : {
72 "type" : "object",
73 "properties" : {
74 "a" : {
75 "type" : "integer", "minimum" : -32768, "maximum" : 32767
76 },
77 "b" : {
78 "type" : "integer", "minimum" : -128, "maximum" : 127
79 }
80 },
81 "additionalProperties" : false
82 },
83 "MyGame_Example_TestSimpleTableWithEnum" : {
84 "type" : "object",
85 "properties" : {
86 "color" : {
87 "$ref" : "#/definitions/MyGame_Example_Color"
88 }
89 },
90 "additionalProperties" : false
91 },
92 "MyGame_Example_Vec3" : {
93 "type" : "object",
94 "properties" : {
95 "x" : {
96 "type" : "number"
97 },
98 "y" : {
99 "type" : "number"
100 },
101 "z" : {
102 "type" : "number"
103 },
104 "test1" : {
105 "type" : "number"
106 },
107 "test2" : {
108 "$ref" : "#/definitions/MyGame_Example_Color"
109 },
110 "test3" : {
111 "$ref" : "#/definitions/MyGame_Example_Test"
112 }
113 },
114 "additionalProperties" : false
115 },
116 "MyGame_Example_Ability" : {
117 "type" : "object",
118 "properties" : {
119 "id" : {
120 "type" : "integer", "minimum" : 0, "maximum" : 4294967295
121 },
122 "distance" : {
123 "type" : "integer", "minimum" : 0, "maximum" : 4294967295
124 }
125 },
126 "additionalProperties" : false
127 },
128 "MyGame_Example_StructOfStructs" : {
129 "type" : "object",
130 "properties" : {
131 "a" : {
132 "$ref" : "#/definitions/MyGame_Example_Ability"
133 },
134 "b" : {
135 "$ref" : "#/definitions/MyGame_Example_Test"
136 },
137 "c" : {
138 "$ref" : "#/definitions/MyGame_Example_Ability"
139 }
140 },
141 "additionalProperties" : false
142 },
143 "MyGame_Example_StructOfStructsOfStructs" : {
144 "type" : "object",
145 "properties" : {
146 "a" : {
147 "$ref" : "#/definitions/MyGame_Example_StructOfStructs"
148 }
149 },
150 "additionalProperties" : false
151 },
152 "MyGame_Example_Stat" : {
153 "type" : "object",
154 "properties" : {
155 "id" : {
156 "type" : "string"
157 },
158 "val" : {
159 "type" : "integer", "minimum" : -9223372036854775808, "maximum" : 9223372036854775807
160 },
161 "count" : {
162 "type" : "integer", "minimum" : 0, "maximum" : 65535
163 }
164 },
165 "additionalProperties" : false
166 },
167 "MyGame_Example_Referrable" : {
168 "type" : "object",
169 "properties" : {
170 "id" : {
171 "type" : "integer", "minimum" : 0, "maximum" : 18446744073709551615
172 }
173 },
174 "additionalProperties" : false
175 },
176 "MyGame_Example_Monster" : {
177 "type" : "object",
178 "description" : "an example documentation comment: \"monster object\"",
179 "properties" : {
180 "pos" : {
181 "$ref" : "#/definitions/MyGame_Example_Vec3"
182 },
183 "mana" : {
184 "type" : "integer", "minimum" : -32768, "maximum" : 32767
185 },
186 "hp" : {
187 "type" : "integer", "minimum" : -32768, "maximum" : 32767
188 },
189 "name" : {
190 "type" : "string"
191 },
192 "friendly" : {
193 "type" : "boolean",
194 "deprecated" : true
195 },
196 "inventory" : {
197 "type" : "array", "items" : {"type" : "integer", "minimum" : 0, "maximum" :255}
198 },
199 "color" : {
200 "$ref" : "#/definitions/MyGame_Example_Color"
201 },
202 "test_type" : {
203 "$ref" : "#/definitions/MyGame_Example_Any"
204 },
205 "test" : {
206 "anyOf": [{ "$ref" : "#/definitions/MyGame_Example_Monster" },{ "$ref" : "#/definitions/MyGame_Example_TestSimpleTableWithEnum" },{ "$ref" : "#/definitions/MyGame_Example2_Monster" }]
207 },
208 "test4" : {
209 "type" : "array", "items" : {"$ref" : "#/definitions/MyGame_Example_Test"}
210 },
211 "testarrayofstring" : {
212 "type" : "array", "items" : {"type" : "string"}
213 },
214 "testarrayoftables" : {
215 "type" : "array", "items" : {"$ref" : "#/definitions/MyGame_Example_Monster"},
216 "description" : "an example documentation comment: this will end up in the generated code\nmultiline too"
217 },
218 "enemy" : {
219 "$ref" : "#/definitions/MyGame_Example_Monster"
220 },
221 "testnestedflatbuffer" : {
222 "type" : "array", "items" : {"type" : "integer", "minimum" : 0, "maximum" :255}
223 },
224 "testempty" : {
225 "$ref" : "#/definitions/MyGame_Example_Stat"
226 },
227 "testbool" : {
228 "type" : "boolean"
229 },
230 "testhashs32_fnv1" : {
231 "type" : "integer", "minimum" : -2147483648, "maximum" : 2147483647
232 },
233 "testhashu32_fnv1" : {
234 "type" : "integer", "minimum" : 0, "maximum" : 4294967295
235 },
236 "testhashs64_fnv1" : {
237 "type" : "integer", "minimum" : -9223372036854775808, "maximum" : 9223372036854775807
238 },
239 "testhashu64_fnv1" : {
240 "type" : "integer", "minimum" : 0, "maximum" : 18446744073709551615
241 },
242 "testhashs32_fnv1a" : {
243 "type" : "integer", "minimum" : -2147483648, "maximum" : 2147483647
244 },
245 "testhashu32_fnv1a" : {
246 "type" : "integer", "minimum" : 0, "maximum" : 4294967295
247 },
248 "testhashs64_fnv1a" : {
249 "type" : "integer", "minimum" : -9223372036854775808, "maximum" : 9223372036854775807
250 },
251 "testhashu64_fnv1a" : {
252 "type" : "integer", "minimum" : 0, "maximum" : 18446744073709551615
253 },
254 "testarrayofbools" : {
255 "type" : "array", "items" : {"type" : "boolean"}
256 },
257 "testf" : {
258 "type" : "number"
259 },
260 "testf2" : {
261 "type" : "number"
262 },
263 "testf3" : {
264 "type" : "number"
265 },
266 "testarrayofstring2" : {
267 "type" : "array", "items" : {"type" : "string"}
268 },
269 "testarrayofsortedstruct" : {
270 "type" : "array", "items" : {"$ref" : "#/definitions/MyGame_Example_Ability"}
271 },
272 "flex" : {
273 "type" : "array", "items" : {"type" : "integer", "minimum" : 0, "maximum" :255}
274 },
275 "test5" : {
276 "type" : "array", "items" : {"$ref" : "#/definitions/MyGame_Example_Test"}
277 },
278 "vector_of_longs" : {
279 "type" : "array", "items" : {"type" : "integer", "minimum" : -9223372036854775808, "maximum" : 9223372036854775807}
280 },
281 "vector_of_doubles" : {
282 "type" : "array", "items" : {"type" : "number"}
283 },
284 "parent_namespace_test" : {
285 "$ref" : "#/definitions/MyGame_InParentNamespace"
286 },
287 "vector_of_referrables" : {
288 "type" : "array", "items" : {"$ref" : "#/definitions/MyGame_Example_Referrable"}
289 },
290 "single_weak_reference" : {
291 "type" : "integer", "minimum" : 0, "maximum" : 18446744073709551615
292 },
293 "vector_of_weak_references" : {
294 "type" : "array", "items" : {"type" : "integer", "minimum" : 0, "maximum" : 18446744073709551615}
295 },
296 "vector_of_strong_referrables" : {
297 "type" : "array", "items" : {"$ref" : "#/definitions/MyGame_Example_Referrable"}
298 },
299 "co_owning_reference" : {
300 "type" : "integer", "minimum" : 0, "maximum" : 18446744073709551615
301 },
302 "vector_of_co_owning_references" : {
303 "type" : "array", "items" : {"type" : "integer", "minimum" : 0, "maximum" : 18446744073709551615}
304 },
305 "non_owning_reference" : {
306 "type" : "integer", "minimum" : 0, "maximum" : 18446744073709551615
307 },
308 "vector_of_non_owning_references" : {
309 "type" : "array", "items" : {"type" : "integer", "minimum" : 0, "maximum" : 18446744073709551615}
310 },
311 "any_unique_type" : {
312 "$ref" : "#/definitions/MyGame_Example_AnyUniqueAliases"
313 },
314 "any_unique" : {
315 "anyOf": [{ "$ref" : "#/definitions/MyGame_Example_Monster" },{ "$ref" : "#/definitions/MyGame_Example_TestSimpleTableWithEnum" },{ "$ref" : "#/definitions/MyGame_Example2_Monster" }]
316 },
317 "any_ambiguous_type" : {
318 "$ref" : "#/definitions/MyGame_Example_AnyAmbiguousAliases"
319 },
320 "any_ambiguous" : {
321 "anyOf": [{ "$ref" : "#/definitions/MyGame_Example_Monster" },{ "$ref" : "#/definitions/MyGame_Example_Monster" },{ "$ref" : "#/definitions/MyGame_Example_Monster" }]
322 },
323 "vector_of_enums" : {
324 "type" : "array", "items" : {"$ref" : "#/definitions/MyGame_Example_Color"}
325 },
326 "signed_enum" : {
327 "$ref" : "#/definitions/MyGame_Example_Race"
328 },
329 "testrequirednestedflatbuffer" : {
330 "type" : "array", "items" : {"type" : "integer", "minimum" : 0, "maximum" :255}
331 },
332 "scalar_key_sorted_tables" : {
333 "type" : "array", "items" : {"$ref" : "#/definitions/MyGame_Example_Stat"}
334 },
335 "native_inline" : {
336 "$ref" : "#/definitions/MyGame_Example_Test"
337 },
338 "long_enum_non_enum_default" : {
339 "$ref" : "#/definitions/MyGame_Example_LongEnum"
340 },
341 "long_enum_normal_default" : {
342 "$ref" : "#/definitions/MyGame_Example_LongEnum"
343 },
344 "nan_default" : {
345 "type" : "number"
346 },
347 "inf_default" : {
348 "type" : "number"
349 },
350 "positive_inf_default" : {
351 "type" : "number"
352 },
353 "infinity_default" : {
354 "type" : "number"
355 },
356 "positive_infinity_default" : {
357 "type" : "number"
358 },
359 "negative_inf_default" : {
360 "type" : "number"
361 },
362 "negative_infinity_default" : {
363 "type" : "number"
364 },
365 "double_inf_default" : {
366 "type" : "number"
367 }
368 },
369 "required" : ["name"],
370 "additionalProperties" : false
371 },
372 "MyGame_Example_TypeAliases" : {
373 "type" : "object",
374 "properties" : {
375 "i8" : {
376 "type" : "integer", "minimum" : -128, "maximum" : 127
377 },
378 "u8" : {
379 "type" : "integer", "minimum" : 0, "maximum" :255
380 },
381 "i16" : {
382 "type" : "integer", "minimum" : -32768, "maximum" : 32767
383 },
384 "u16" : {
385 "type" : "integer", "minimum" : 0, "maximum" : 65535
386 },
387 "i32" : {
388 "type" : "integer", "minimum" : -2147483648, "maximum" : 2147483647
389 },
390 "u32" : {
391 "type" : "integer", "minimum" : 0, "maximum" : 4294967295
392 },
393 "i64" : {
394 "type" : "integer", "minimum" : -9223372036854775808, "maximum" : 9223372036854775807
395 },
396 "u64" : {
397 "type" : "integer", "minimum" : 0, "maximum" : 18446744073709551615
398 },
399 "f32" : {
400 "type" : "number"
401 },
402 "f64" : {
403 "type" : "number"
404 },
405 "v8" : {
406 "type" : "array", "items" : {"type" : "integer", "minimum" : -128, "maximum" : 127}
407 },
408 "vf64" : {
409 "type" : "array", "items" : {"type" : "number"}
410 }
411 },
412 "additionalProperties" : false
413 }
414 },
415 "$ref" : "#/definitions/MyGame_Example_Monster"
416}
View as plain text