mirror of
https://github.com/google/flatbuffers.git
synced 2026-06-06 13:37:25 +00:00
* Added internal - limited - implementation of flatbuffers::unique_ptr for STLs that don't ship with std::unique_ptr. In C++11 and beyond this is just an alias for std::unique_ptr. * Aliased used type traits structs is_scalar is_floating_point is_unsigned into flatbuffers namespace so they can be replaced in C++98 implementations. Right now these point at stlport's TR1 implementations. * Wrapped vector::data() in vector_data(). * Wrapped vector::emplace_back() in vector_emplace_back(). * Wrapper string::back() in string_back(). * Added variants of FlatBufferBuilder::CreateVector() and FlatBufferBuilder::CreateVectorOfStructs() that allow the use of plain function pointers. Generated code has also been modified to use plain functions to build objects rather than std::function() so all generated code will work in C++98 applications. * Added flexbuffers::Builder::Vector(), flexbuffers::Builder::TypedVector() and flexbuffers::Builder::Map() methods that allow the use of plain function pointers. * Changed Parser to internally use plain function pointers when parsing table and vector delimiters. * Added specializations of NumToString() for 64-bit types that aren't supported by stringstream in stlport. * Overloaded numeric_limits for 64-bit types not supported by stlport. * Replaced build_apk.sh (which was broken by deprecation of the "android" tool in the Android SDK) with build.gradle and the appropriate gradle wrapper to build an APK. * Switched Android build to build against all STL variants. * Updated travis configuration to build Android test and sample. Tested: * Verified all tests continue to work on Linux, OSX and Android. * Verified Travis build is green. Change-Id: I9e634363793f85b9f141d21454b10686020a2065
118 lines
4.3 KiB
JSON
118 lines
4.3 KiB
JSON
{
|
|
"$schema": "http://json-schema.org/draft-04/schema#",
|
|
"definitions": {
|
|
"MyGame_OtherNameSpace_FromInclude" : {
|
|
"type" : "string",
|
|
"enum": ["IncludeVal"]
|
|
},
|
|
"MyGame_Example_Color" : {
|
|
"type" : "string",
|
|
"enum": ["Red", "Green", "Blue"]
|
|
},
|
|
"MyGame_Example_Any" : {
|
|
"type" : "string",
|
|
"enum": ["NONE", "Monster", "TestSimpleTableWithEnum", "MyGame_Example2_Monster"]
|
|
},
|
|
"MyGame_OtherNameSpace_Unused" : {
|
|
"type" : "object",
|
|
"properties" : {
|
|
}
|
|
},
|
|
"MyGame_OtherNameSpace_TableB" : {
|
|
"type" : "object",
|
|
"properties" : {
|
|
"a" : { "$ref" : "#/definitions/TableA" }
|
|
}
|
|
},
|
|
"TableA" : {
|
|
"type" : "object",
|
|
"properties" : {
|
|
"b" : { "$ref" : "#/definitions/MyGame_OtherNameSpace_TableB" }
|
|
}
|
|
},
|
|
"MyGame_Example2_Monster" : {
|
|
"type" : "object",
|
|
"properties" : {
|
|
}
|
|
},
|
|
"MyGame_Example_Test" : {
|
|
"type" : "object",
|
|
"properties" : {
|
|
"a" : { "type" : "number" },
|
|
"b" : { "type" : "number" }
|
|
}
|
|
},
|
|
"MyGame_Example_TestSimpleTableWithEnum" : {
|
|
"type" : "object",
|
|
"properties" : {
|
|
"color" : { "$ref" : "#/definitions/MyGame_Example_Color" }
|
|
}
|
|
},
|
|
"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" }
|
|
}
|
|
},
|
|
"MyGame_Example_Ability" : {
|
|
"type" : "object",
|
|
"properties" : {
|
|
"id" : { "type" : "number" },
|
|
"distance" : { "type" : "number" }
|
|
}
|
|
},
|
|
"MyGame_Example_Stat" : {
|
|
"type" : "object",
|
|
"properties" : {
|
|
"id" : { "type" : "string" },
|
|
"val" : { "type" : "number" },
|
|
"count" : { "type" : "number" }
|
|
}
|
|
},
|
|
"MyGame_Example_Monster" : {
|
|
"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" } }
|
|
},
|
|
"required" : [ "name"]
|
|
}
|
|
},
|
|
"$ref" : "#/definitions/MyGame_Example_Monster"
|
|
}
|