{ "$schema": "https://json-schema.org/draft/2019-09/schema", "definitions": { "MyGame_OtherNameSpace_FromInclude" : { "type" : "string", "enum": ["IncludeVal"] }, "MyGame_Example_Color" : { "type" : "string", "enum": ["Red", "Green", "Blue"] }, "MyGame_Example_Race" : { "type" : "string", "enum": ["None", "Human", "Dwarf", "Elf"] }, "MyGame_Example_Any" : { "type" : "string", "enum": ["NONE", "Monster", "TestSimpleTableWithEnum", "MyGame_Example2_Monster"] }, "MyGame_Example_AnyUniqueAliases" : { "type" : "string", "enum": ["NONE", "M", "TS", "M2"] }, "MyGame_Example_AnyAmbiguousAliases" : { "type" : "string", "enum": ["NONE", "M1", "M2", "M3"] }, "MyGame_OtherNameSpace_Unused" : { "type" : "object", "properties" : { "a" : { "type" : "integer", "minimum" : -2147483648, "maximum" : 2147483647 } }, "additionalProperties" : false }, "MyGame_OtherNameSpace_TableB" : { "type" : "object", "properties" : { "a" : { "$ref" : "#/definitions/TableA" } }, "additionalProperties" : false }, "TableA" : { "type" : "object", "properties" : { "b" : { "$ref" : "#/definitions/MyGame_OtherNameSpace_TableB" } }, "additionalProperties" : false }, "MyGame_InParentNamespace" : { "type" : "object", "properties" : { }, "additionalProperties" : false }, "MyGame_Example2_Monster" : { "type" : "object", "properties" : { }, "additionalProperties" : false }, "MyGame_Example_Test" : { "type" : "object", "properties" : { "a" : { "type" : "integer", "minimum" : -32768, "maximum" : 32767 }, "b" : { "type" : "integer", "minimum" : -128, "maximum" : 127 } }, "additionalProperties" : false }, "MyGame_Example_TestSimpleTableWithEnum" : { "type" : "object", "properties" : { "color" : { "$ref" : "#/definitions/MyGame_Example_Color" } }, "additionalProperties" : false }, "MyGame_Example_Vec3" : { "type" : "object", "properties" : { "x" : { "type" : "number" }, "y" : { "type" : "number" }, "z" : { "type" : "number" }, "test1" : { "type" : "number" }, "test2" : { "$ref" : "#/definitions/MyGame_Example_Color" }, "test3" : { "$ref" : "#/definitions/MyGame_Example_Test" } }, "additionalProperties" : false }, "MyGame_Example_Ability" : { "type" : "object", "properties" : { "id" : { "type" : "integer", "minimum" : 0, "maximum" : 4294967295 }, "distance" : { "type" : "integer", "minimum" : 0, "maximum" : 4294967295 } }, "additionalProperties" : false }, "MyGame_Example_StructOfStructs" : { "type" : "object", "properties" : { "a" : { "$ref" : "#/definitions/MyGame_Example_Ability" }, "b" : { "$ref" : "#/definitions/MyGame_Example_Test" }, "c" : { "$ref" : "#/definitions/MyGame_Example_Ability" } }, "additionalProperties" : false }, "MyGame_Example_Stat" : { "type" : "object", "properties" : { "id" : { "type" : "string" }, "val" : { "type" : "integer", "minimum" : -9223372036854775808, "maximum" : 9223372036854775807 }, "count" : { "type" : "integer", "minimum" : 0, "maximum" : 65535 } }, "additionalProperties" : false }, "MyGame_Example_Referrable" : { "type" : "object", "properties" : { "id" : { "type" : "integer", "minimum" : 0, "maximum" : 18446744073709551615 } }, "additionalProperties" : false }, "MyGame_Example_Monster" : { "type" : "object", "description" : "an example documentation comment: \"monster object\"", "properties" : { "pos" : { "$ref" : "#/definitions/MyGame_Example_Vec3" }, "mana" : { "type" : "integer", "minimum" : -32768, "maximum" : 32767 }, "hp" : { "type" : "integer", "minimum" : -32768, "maximum" : 32767 }, "name" : { "type" : "string" }, "friendly" : { "type" : "boolean", "deprecated" : true }, "inventory" : { "type" : "array", "items" : {"type" : "integer", "minimum" : 0, "maximum" :255} }, "color" : { "$ref" : "#/definitions/MyGame_Example_Color" }, "test_type" : { "$ref" : "#/definitions/MyGame_Example_Any" }, "test" : { "anyOf": [{ "$ref" : "#/definitions/MyGame_Example_Monster" },{ "$ref" : "#/definitions/MyGame_Example_TestSimpleTableWithEnum" },{ "$ref" : "#/definitions/MyGame_Example2_Monster" }] }, "test4" : { "type" : "array", "items" : {"$ref" : "#/definitions/MyGame_Example_Test"} }, "testarrayofstring" : { "type" : "array", "items" : {"type" : "string"} }, "testarrayoftables" : { "type" : "array", "items" : {"$ref" : "#/definitions/MyGame_Example_Monster"}, "description" : "an example documentation comment: this will end up in the generated code\nmultiline too" }, "enemy" : { "$ref" : "#/definitions/MyGame_Example_Monster" }, "testnestedflatbuffer" : { "type" : "array", "items" : {"type" : "integer", "minimum" : 0, "maximum" :255} }, "testempty" : { "$ref" : "#/definitions/MyGame_Example_Stat" }, "testbool" : { "type" : "boolean" }, "testhashs32_fnv1" : { "type" : "integer", "minimum" : -2147483648, "maximum" : 2147483647 }, "testhashu32_fnv1" : { "type" : "integer", "minimum" : 0, "maximum" : 4294967295 }, "testhashs64_fnv1" : { "type" : "integer", "minimum" : -9223372036854775808, "maximum" : 9223372036854775807 }, "testhashu64_fnv1" : { "type" : "integer", "minimum" : 0, "maximum" : 18446744073709551615 }, "testhashs32_fnv1a" : { "type" : "integer", "minimum" : -2147483648, "maximum" : 2147483647 }, "testhashu32_fnv1a" : { "type" : "integer", "minimum" : 0, "maximum" : 4294967295 }, "testhashs64_fnv1a" : { "type" : "integer", "minimum" : -9223372036854775808, "maximum" : 9223372036854775807 }, "testhashu64_fnv1a" : { "type" : "integer", "minimum" : 0, "maximum" : 18446744073709551615 }, "testarrayofbools" : { "type" : "array", "items" : {"type" : "boolean"} }, "testf" : { "type" : "number" }, "testf2" : { "type" : "number" }, "testf3" : { "type" : "number" }, "testarrayofstring2" : { "type" : "array", "items" : {"type" : "string"} }, "testarrayofsortedstruct" : { "type" : "array", "items" : {"$ref" : "#/definitions/MyGame_Example_Ability"} }, "flex" : { "type" : "array", "items" : {"type" : "integer", "minimum" : 0, "maximum" :255} }, "test5" : { "type" : "array", "items" : {"$ref" : "#/definitions/MyGame_Example_Test"} }, "vector_of_longs" : { "type" : "array", "items" : {"type" : "integer", "minimum" : -9223372036854775808, "maximum" : 9223372036854775807} }, "vector_of_doubles" : { "type" : "array", "items" : {"type" : "number"} }, "parent_namespace_test" : { "$ref" : "#/definitions/MyGame_InParentNamespace" }, "vector_of_referrables" : { "type" : "array", "items" : {"$ref" : "#/definitions/MyGame_Example_Referrable"} }, "single_weak_reference" : { "type" : "integer", "minimum" : 0, "maximum" : 18446744073709551615 }, "vector_of_weak_references" : { "type" : "array", "items" : {"type" : "integer", "minimum" : 0, "maximum" : 18446744073709551615} }, "vector_of_strong_referrables" : { "type" : "array", "items" : {"$ref" : "#/definitions/MyGame_Example_Referrable"} }, "co_owning_reference" : { "type" : "integer", "minimum" : 0, "maximum" : 18446744073709551615 }, "vector_of_co_owning_references" : { "type" : "array", "items" : {"type" : "integer", "minimum" : 0, "maximum" : 18446744073709551615} }, "non_owning_reference" : { "type" : "integer", "minimum" : 0, "maximum" : 18446744073709551615 }, "vector_of_non_owning_references" : { "type" : "array", "items" : {"type" : "integer", "minimum" : 0, "maximum" : 18446744073709551615} }, "any_unique_type" : { "$ref" : "#/definitions/MyGame_Example_AnyUniqueAliases" }, "any_unique" : { "anyOf": [{ "$ref" : "#/definitions/MyGame_Example_Monster" },{ "$ref" : "#/definitions/MyGame_Example_TestSimpleTableWithEnum" },{ "$ref" : "#/definitions/MyGame_Example2_Monster" }] }, "any_ambiguous_type" : { "$ref" : "#/definitions/MyGame_Example_AnyAmbiguousAliases" }, "any_ambiguous" : { "anyOf": [{ "$ref" : "#/definitions/MyGame_Example_Monster" },{ "$ref" : "#/definitions/MyGame_Example_Monster" },{ "$ref" : "#/definitions/MyGame_Example_Monster" }] }, "vector_of_enums" : { "type" : "array", "items" : {"$ref" : "#/definitions/MyGame_Example_Color"} }, "signed_enum" : { "$ref" : "#/definitions/MyGame_Example_Race" }, "testrequirednestedflatbuffer" : { "type" : "array", "items" : {"type" : "integer", "minimum" : 0, "maximum" :255} }, "scalar_key_sorted_tables" : { "type" : "array", "items" : {"$ref" : "#/definitions/MyGame_Example_Stat"} } }, "required" : ["name"], "additionalProperties" : false }, "MyGame_Example_TypeAliases" : { "type" : "object", "properties" : { "i8" : { "type" : "integer", "minimum" : -128, "maximum" : 127 }, "u8" : { "type" : "integer", "minimum" : 0, "maximum" :255 }, "i16" : { "type" : "integer", "minimum" : -32768, "maximum" : 32767 }, "u16" : { "type" : "integer", "minimum" : 0, "maximum" : 65535 }, "i32" : { "type" : "integer", "minimum" : -2147483648, "maximum" : 2147483647 }, "u32" : { "type" : "integer", "minimum" : 0, "maximum" : 4294967295 }, "i64" : { "type" : "integer", "minimum" : -9223372036854775808, "maximum" : 9223372036854775807 }, "u64" : { "type" : "integer", "minimum" : 0, "maximum" : 18446744073709551615 }, "f32" : { "type" : "number" }, "f64" : { "type" : "number" }, "v8" : { "type" : "array", "items" : {"type" : "integer", "minimum" : -128, "maximum" : 127} }, "vf64" : { "type" : "array", "items" : {"type" : "number"} } }, "additionalProperties" : false } }, "$ref" : "#/definitions/MyGame_Example_Monster" }