mirror of
https://github.com/google/flatbuffers.git
synced 2026-06-26 00:58:39 +00:00
Add support for fixed-size arrays (#5313)
This commit is contained in:
committed by
Wouter van Oortmerssen
parent
0d2cebccfe
commit
e635141d5b
@@ -24,21 +24,27 @@
|
||||
"MyGame_OtherNameSpace_Unused" : {
|
||||
"type" : "object",
|
||||
"properties" : {
|
||||
"a" : { "type" : "number" }
|
||||
"a" : {
|
||||
"type" : "number"
|
||||
}
|
||||
},
|
||||
"additionalProperties" : false
|
||||
},
|
||||
"MyGame_OtherNameSpace_TableB" : {
|
||||
"type" : "object",
|
||||
"properties" : {
|
||||
"a" : { "$ref" : "#/definitions/TableA" }
|
||||
"a" : {
|
||||
"$ref" : "#/definitions/TableA"
|
||||
}
|
||||
},
|
||||
"additionalProperties" : false
|
||||
},
|
||||
"TableA" : {
|
||||
"type" : "object",
|
||||
"properties" : {
|
||||
"b" : { "$ref" : "#/definitions/MyGame_OtherNameSpace_TableB" }
|
||||
"b" : {
|
||||
"$ref" : "#/definitions/MyGame_OtherNameSpace_TableB"
|
||||
}
|
||||
},
|
||||
"additionalProperties" : false
|
||||
},
|
||||
@@ -57,51 +63,81 @@
|
||||
"MyGame_Example_Test" : {
|
||||
"type" : "object",
|
||||
"properties" : {
|
||||
"a" : { "type" : "number" },
|
||||
"b" : { "type" : "number" }
|
||||
"a" : {
|
||||
"type" : "number"
|
||||
},
|
||||
"b" : {
|
||||
"type" : "number"
|
||||
}
|
||||
},
|
||||
"additionalProperties" : false
|
||||
},
|
||||
"MyGame_Example_TestSimpleTableWithEnum" : {
|
||||
"type" : "object",
|
||||
"properties" : {
|
||||
"color" : { "$ref" : "#/definitions/MyGame_Example_Color" }
|
||||
"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" }
|
||||
"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" : "number" },
|
||||
"distance" : { "type" : "number" }
|
||||
"id" : {
|
||||
"type" : "number"
|
||||
},
|
||||
"distance" : {
|
||||
"type" : "number"
|
||||
}
|
||||
},
|
||||
"additionalProperties" : false
|
||||
},
|
||||
"MyGame_Example_Stat" : {
|
||||
"type" : "object",
|
||||
"properties" : {
|
||||
"id" : { "type" : "string" },
|
||||
"val" : { "type" : "number" },
|
||||
"count" : { "type" : "number" }
|
||||
"id" : {
|
||||
"type" : "string"
|
||||
},
|
||||
"val" : {
|
||||
"type" : "number"
|
||||
},
|
||||
"count" : {
|
||||
"type" : "number"
|
||||
}
|
||||
},
|
||||
"additionalProperties" : false
|
||||
},
|
||||
"MyGame_Example_Referrable" : {
|
||||
"type" : "object",
|
||||
"properties" : {
|
||||
"id" : { "type" : "number" }
|
||||
"id" : {
|
||||
"type" : "number"
|
||||
}
|
||||
},
|
||||
"additionalProperties" : false
|
||||
},
|
||||
@@ -109,54 +145,150 @@
|
||||
"type" : "object",
|
||||
"description" : " an example documentation comment: monster object",
|
||||
"properties" : {
|
||||
"pos" : { "$ref" : "#/definitions/MyGame_Example_Vec3" },
|
||||
"mana" : { "type" : "number" },
|
||||
"hp" : { "type" : "number" },
|
||||
"name" : { "type" : "string" },
|
||||
"friendly" : { "type" : "boolean" },
|
||||
"inventory" : { "type" : "array", "items" : { "type" : "number" } },
|
||||
"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" } },
|
||||
"enemy" : { "$ref" : "#/definitions/MyGame_Example_Monster" },
|
||||
"testnestedflatbuffer" : { "type" : "array", "items" : { "type" : "number" } },
|
||||
"testempty" : { "$ref" : "#/definitions/MyGame_Example_Stat" },
|
||||
"testbool" : { "type" : "boolean" },
|
||||
"testhashs32_fnv1" : { "type" : "number" },
|
||||
"testhashu32_fnv1" : { "type" : "number" },
|
||||
"testhashs64_fnv1" : { "type" : "number" },
|
||||
"testhashu64_fnv1" : { "type" : "number" },
|
||||
"testhashs32_fnv1a" : { "type" : "number" },
|
||||
"testhashu32_fnv1a" : { "type" : "number" },
|
||||
"testhashs64_fnv1a" : { "type" : "number" },
|
||||
"testhashu64_fnv1a" : { "type" : "number" },
|
||||
"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" : "number" } },
|
||||
"test5" : { "type" : "array", "items" : { "$ref" : "#/definitions/MyGame_Example_Test" } },
|
||||
"vector_of_longs" : { "type" : "array", "items" : { "type" : "number" } },
|
||||
"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" : "number" },
|
||||
"vector_of_weak_references" : { "type" : "array", "items" : { "type" : "number" } },
|
||||
"vector_of_strong_referrables" : { "type" : "array", "items" : { "$ref" : "#/definitions/MyGame_Example_Referrable" } },
|
||||
"co_owning_reference" : { "type" : "number" },
|
||||
"vector_of_co_owning_references" : { "type" : "array", "items" : { "type" : "number" } },
|
||||
"non_owning_reference" : { "type" : "number" },
|
||||
"vector_of_non_owning_references" : { "type" : "array", "items" : { "type" : "number" } },
|
||||
"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" : { "$ref" : "#/definitions/MyGame_Example_Color" }
|
||||
"pos" : {
|
||||
"$ref" : "#/definitions/MyGame_Example_Vec3"
|
||||
},
|
||||
"mana" : {
|
||||
"type" : "number"
|
||||
},
|
||||
"hp" : {
|
||||
"type" : "number"
|
||||
},
|
||||
"name" : {
|
||||
"type" : "string"
|
||||
},
|
||||
"friendly" : {
|
||||
"type" : "boolean"
|
||||
},
|
||||
"inventory" : {
|
||||
"type" : "array", "items" : { "type" : "number" }
|
||||
},
|
||||
"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" }
|
||||
},
|
||||
"enemy" : {
|
||||
"$ref" : "#/definitions/MyGame_Example_Monster"
|
||||
},
|
||||
"testnestedflatbuffer" : {
|
||||
"type" : "array", "items" : { "type" : "number" }
|
||||
},
|
||||
"testempty" : {
|
||||
"$ref" : "#/definitions/MyGame_Example_Stat"
|
||||
},
|
||||
"testbool" : {
|
||||
"type" : "boolean"
|
||||
},
|
||||
"testhashs32_fnv1" : {
|
||||
"type" : "number"
|
||||
},
|
||||
"testhashu32_fnv1" : {
|
||||
"type" : "number"
|
||||
},
|
||||
"testhashs64_fnv1" : {
|
||||
"type" : "number"
|
||||
},
|
||||
"testhashu64_fnv1" : {
|
||||
"type" : "number"
|
||||
},
|
||||
"testhashs32_fnv1a" : {
|
||||
"type" : "number"
|
||||
},
|
||||
"testhashu32_fnv1a" : {
|
||||
"type" : "number"
|
||||
},
|
||||
"testhashs64_fnv1a" : {
|
||||
"type" : "number"
|
||||
},
|
||||
"testhashu64_fnv1a" : {
|
||||
"type" : "number"
|
||||
},
|
||||
"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" : "number" }
|
||||
},
|
||||
"test5" : {
|
||||
"type" : "array", "items" : { "$ref" : "#/definitions/MyGame_Example_Test" }
|
||||
},
|
||||
"vector_of_longs" : {
|
||||
"type" : "array", "items" : { "type" : "number" }
|
||||
},
|
||||
"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" : "number"
|
||||
},
|
||||
"vector_of_weak_references" : {
|
||||
"type" : "array", "items" : { "type" : "number" }
|
||||
},
|
||||
"vector_of_strong_referrables" : {
|
||||
"type" : "array", "items" : { "$ref" : "#/definitions/MyGame_Example_Referrable" }
|
||||
},
|
||||
"co_owning_reference" : {
|
||||
"type" : "number"
|
||||
},
|
||||
"vector_of_co_owning_references" : {
|
||||
"type" : "array", "items" : { "type" : "number" }
|
||||
},
|
||||
"non_owning_reference" : {
|
||||
"type" : "number"
|
||||
},
|
||||
"vector_of_non_owning_references" : {
|
||||
"type" : "array", "items" : { "type" : "number" }
|
||||
},
|
||||
"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" : {
|
||||
"$ref" : "#/definitions/MyGame_Example_Color"
|
||||
}
|
||||
},
|
||||
"required" : ["name"],
|
||||
"additionalProperties" : false
|
||||
@@ -164,18 +296,42 @@
|
||||
"MyGame_Example_TypeAliases" : {
|
||||
"type" : "object",
|
||||
"properties" : {
|
||||
"i8" : { "type" : "number" },
|
||||
"u8" : { "type" : "number" },
|
||||
"i16" : { "type" : "number" },
|
||||
"u16" : { "type" : "number" },
|
||||
"i32" : { "type" : "number" },
|
||||
"u32" : { "type" : "number" },
|
||||
"i64" : { "type" : "number" },
|
||||
"u64" : { "type" : "number" },
|
||||
"f32" : { "type" : "number" },
|
||||
"f64" : { "type" : "number" },
|
||||
"v8" : { "type" : "array", "items" : { "type" : "number" } },
|
||||
"vf64" : { "type" : "array", "items" : { "type" : "number" } }
|
||||
"i8" : {
|
||||
"type" : "number"
|
||||
},
|
||||
"u8" : {
|
||||
"type" : "number"
|
||||
},
|
||||
"i16" : {
|
||||
"type" : "number"
|
||||
},
|
||||
"u16" : {
|
||||
"type" : "number"
|
||||
},
|
||||
"i32" : {
|
||||
"type" : "number"
|
||||
},
|
||||
"u32" : {
|
||||
"type" : "number"
|
||||
},
|
||||
"i64" : {
|
||||
"type" : "number"
|
||||
},
|
||||
"u64" : {
|
||||
"type" : "number"
|
||||
},
|
||||
"f32" : {
|
||||
"type" : "number"
|
||||
},
|
||||
"f64" : {
|
||||
"type" : "number"
|
||||
},
|
||||
"v8" : {
|
||||
"type" : "array", "items" : { "type" : "number" }
|
||||
},
|
||||
"vf64" : {
|
||||
"type" : "array", "items" : { "type" : "number" }
|
||||
}
|
||||
},
|
||||
"additionalProperties" : false
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user