• Robert's avatar
    [Go] Namespaced imports fix (#5097) · 0eb7b3be
    Robert authored
    Track and emit required FlatBuffers namespace imports in generated Go code.
    
    Update Go code generator by moving most functionality into the generator class, to facilitate namespace tracking. (Note that the git diff in this combined commit may appear large due to this refactoring, but very little code was actually changed.)
    Update Go code generator by tracking namespace imports when generating FlatBuffers code.
    Update Go code generator by emitting package imports to correctly reference code in other FlatBuffers namespaces.
    Create Go test that checks the usage of InParentNamespace objects (as defined in the example schema).
    Create Docker test that checks the Go language port.
    Fixes #4883
    Fixes #3927
    
    Individual commits:
    
    * remove "static" from soon-to-be method functions
    * move almost all functions into class as methods
    * set current namespace and emit package names if needed
    * track imported namespaces
    * parent namespaces work
    * docker test for go ^1.11
    * update base image name for go docker test
    * remove cerr debugging
    * formatting fixes
    * re-run generate_code.sh
    * explicitly test namespace imports and usage
    0eb7b3be
Name
Last commit
Last update
..
FlatBuffers.Test Loading commit data...
MyGame Loading commit data...
docker 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...
LuaTest.bat 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...
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_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_python_wire.mon Loading commit data...
monsterdata_test.golden Loading commit data...
monsterdata_test.json Loading commit data...
monsterdata_test.mon 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...