• lu-wang-g's avatar
    Flatbuffers Python Object API (#5616) · 65f87035
    lu-wang-g authored
    * Flatbuffers Python Object API
    
    Implement the logic to generate the Python object API that can
    unpack the data from a buf class into an object class, and pack
    the data of an object class to a buf class.
    
    * Fix the build issues
    
    Remove unused parameters and replace auto in the for-loop statement
    with std::string to make it compatible with VS2010.
    
    * Fix the build issues.
    
    * Add support for Array type
    
    Added logic to handle Array type in Python Object API. Updated the
    generated code accordingly.
    
    * Fix the old style casting from int to char
    
    * Fixed another conversion from int to char
    
    * Fixed the import for typing
    
    Importing typing may cause errors when a machine do not have the
    moduel typing installed. This PR fixes the issue by guarding
    "import typing" with the "try/except" statement.
    
    * Fix issue of iterating the vector of import list
    
    * Update the generated examples using generate_code.sh
    
    * Fix the import order for typing
    
    The import list was stored in unordered_set, so that each generated
    codes may have different import order. Therefore, it failed in the
    consistency test where two generated copies need to have exactly the
    same apperance.
    
    * Optimize unpack using numpy
    
    Use numpy to unpack vector whenever it is possible to improve unpack
    performance.
    
    Also, added codegen command for Python specificly in generate_code.sh,
    because --no-includes cannot be turn on for Python.
    
    * Fix the import order
    
    * Update generate_code.bat for windows accordingly
    
    * Replace error message with pass
    
    Avoid printing error message for every Python2 users about typing.
    Replace it with pass.
    65f87035
Name
Last commit
Last update
..
FlatBuffers.Benchmarks Loading commit data...
FlatBuffers.Test Loading commit data...
MyGame Loading commit data...
docker Loading commit data...
evolution_test Loading commit data...
fuzzer Loading commit data...
include_test Loading commit data...
namespace_test Loading commit data...
prototest Loading commit data...
rust_usage_test Loading commit data...
union_vector Loading commit data...
DartTest.sh Loading commit data...
GoTest.sh Loading commit data...
JavaScriptTest.js Loading commit data...
JavaScriptTest.sh Loading commit data...
JavaScriptUnionVectorTest.js Loading commit data...
JavaTest.bat Loading commit data...
JavaTest.java Loading commit data...
JavaTest.sh Loading commit data...
KotlinTest.kt Loading commit data...
KotlinTest.sh Loading commit data...
LuaTest.bat Loading commit data...
LuaTest.sh Loading commit data...
PythonTest.sh Loading commit data...
RustTest.bat Loading commit data...
RustTest.sh Loading commit data...
TestAll.sh Loading commit data...
TypeScriptTest.sh Loading commit data...
arrays_test.bfbs Loading commit data...
arrays_test.fbs Loading commit data...
arrays_test.golden Loading commit data...
arrays_test.schema.json Loading commit data...
arrays_test_generated.h Loading commit data...
generate_code.bat Loading commit data...
generate_code.sh Loading commit data...
go_test.go Loading commit data...
javatest.bin Loading commit data...
lobstertest.lobster Loading commit data...
luatest.lua Loading commit data...
monster_extra.fbs Loading commit data...
monster_extra_generated.h Loading commit data...
monster_test.bfbs Loading commit data...
monster_test.fbs Loading commit data...
monster_test.grpc.fb.cc Loading commit data...
monster_test.grpc.fb.h Loading commit data...
monster_test.schema.json Loading commit data...
monster_test_generated.h Loading commit data...
monster_test_generated.js Loading commit data...
monster_test_generated.lobster Loading commit data...
monster_test_generated.rs Loading commit data...
monster_test_generated.ts Loading commit data...
monster_test_my_game.example2_generated.dart Loading commit data...
monster_test_my_game.example_generated.dart Loading commit data...
monster_test_my_game_generated.dart Loading commit data...
monsterdata_extra.json Loading commit data...
monsterdata_python_wire.mon Loading commit data...
monsterdata_test.golden Loading commit data...
monsterdata_test.json Loading commit data...
monsterdata_test.mon Loading commit data...
native_type_test.fbs Loading commit data...
native_type_test_generated.h Loading commit data...
native_type_test_impl.cpp Loading commit data...
native_type_test_impl.h Loading commit data...
phpTest.php Loading commit data...
phpUnionVectorTest.php Loading commit data...
phpUnionVectorTest.sh Loading commit data...
py_test.py Loading commit data...
test.cpp Loading commit data...
test_assert.cpp Loading commit data...
test_assert.h Loading commit data...
test_builder.cpp Loading commit data...
test_builder.h Loading commit data...
unicode_test.json Loading commit data...