• Wouter van Oortmerssen's avatar
    More native code gen functionality. · 3f936c56
    Wouter van Oortmerssen authored
    Allow tables to be mapped to native types directly.  For example, a table
    representing a vector3 (eg. table Vec3 { x:float; y:float; z:float; }) can
    be mapped to a "mathfu::vec3" native type in NativeTables.  This requires
    users to provide Pack and UnPack functions that convert between the
    Table and native types.  This is done by adding the "native_type" attribute
    to the table definition.
    
    To support user-defined flatbuffers::Pack and flatbuffers::UnPack functions,
    support a "native_include" markup that will generate a corresponding
    
    Also add an UnPackTo function which allows users to pass in a pointer to
    a NativeTable object into which to UnPack the Table.  The existing UnPack
    function is now simply:
    
      NativeTable* UnPack() {
        NativeTable* obj = new NativeTable();
        Table::UnPackTo(obj);
        return obj;
      }
    
    Finally, allow native types to be given a default value as well which are
    set in the NativeTable constructor.  This is done by providing a
    "native_default" attribute to the member of a table.
    
    Change-Id: Ic45cb48b0e6d7cfa5734b24819e54aa96d847cfd
    3f936c56
Name
Last commit
Last update
CMake Loading commit data...
android Loading commit data...
biicode Loading commit data...
docs Loading commit data...
go Loading commit data...
grpc Loading commit data...
include/flatbuffers Loading commit data...
java/com/google/flatbuffers Loading commit data...
js Loading commit data...
net/FlatBuffers Loading commit data...
php Loading commit data...
python Loading commit data...
reflection Loading commit data...
samples Loading commit data...
src Loading commit data...
tests Loading commit data...
.gitattributes Loading commit data...
.gitignore Loading commit data...
.travis.yml Loading commit data...
CMakeLists.txt Loading commit data...
CONTRIBUTING.md Loading commit data...
ISSUE_TEMPLATE.md Loading commit data...
LICENSE.txt Loading commit data...
appveyor.yml Loading commit data...
biicode.conf Loading commit data...
composer.json Loading commit data...
pom.xml Loading commit data...
readme.md Loading commit data...