mirror of
https://github.com/google/flatbuffers.git
synced 2026-06-27 21:08:05 +00:00
applied struct parameter fix to Go and Python generated classes
This commit is contained in:
@@ -332,7 +332,7 @@ static void StructBuilderArgs(const StructDef &struct_def,
|
|||||||
// don't clash, and to make it obvious these arguments are constructing
|
// don't clash, and to make it obvious these arguments are constructing
|
||||||
// a nested struct, prefix the name with the struct name.
|
// a nested struct, prefix the name with the struct name.
|
||||||
StructBuilderArgs(*field.value.type.struct_def,
|
StructBuilderArgs(*field.value.type.struct_def,
|
||||||
(field.value.type.struct_def->name + "_").c_str(),
|
(nameprefix + (field.name + "_")).c_str(),
|
||||||
code_ptr);
|
code_ptr);
|
||||||
} else {
|
} else {
|
||||||
std::string &code = *code_ptr;
|
std::string &code = *code_ptr;
|
||||||
@@ -365,7 +365,7 @@ static void StructBuilderBody(const StructDef &struct_def,
|
|||||||
code += " builder.Pad(" + NumToString(field.padding) + ")\n";
|
code += " builder.Pad(" + NumToString(field.padding) + ")\n";
|
||||||
if (IsStruct(field.value.type)) {
|
if (IsStruct(field.value.type)) {
|
||||||
StructBuilderBody(*field.value.type.struct_def,
|
StructBuilderBody(*field.value.type.struct_def,
|
||||||
(field.value.type.struct_def->name + "_").c_str(),
|
(nameprefix + (field.name + "_")).c_str(),
|
||||||
code_ptr);
|
code_ptr);
|
||||||
} else {
|
} else {
|
||||||
code += " builder.Prepend" + GenMethod(field) + "(";
|
code += " builder.Prepend" + GenMethod(field) + "(";
|
||||||
|
|||||||
@@ -307,9 +307,9 @@ static void StructBuilderArgs(const StructDef &struct_def,
|
|||||||
if (IsStruct(field.value.type)) {
|
if (IsStruct(field.value.type)) {
|
||||||
// Generate arguments for a struct inside a struct. To ensure names
|
// Generate arguments for a struct inside a struct. To ensure names
|
||||||
// don't clash, and to make it obvious these arguments are constructing
|
// don't clash, and to make it obvious these arguments are constructing
|
||||||
// a nested struct, prefix the name with the struct name.
|
// a nested struct, prefix the name with the field name.
|
||||||
StructBuilderArgs(*field.value.type.struct_def,
|
StructBuilderArgs(*field.value.type.struct_def,
|
||||||
(field.value.type.struct_def->name + "_").c_str(),
|
(nameprefix + (field.name + "_")).c_str(),
|
||||||
code_ptr);
|
code_ptr);
|
||||||
} else {
|
} else {
|
||||||
std::string &code = *code_ptr;
|
std::string &code = *code_ptr;
|
||||||
@@ -341,7 +341,7 @@ static void StructBuilderBody(const StructDef &struct_def,
|
|||||||
code += " builder.Pad(" + NumToString(field.padding) + ")\n";
|
code += " builder.Pad(" + NumToString(field.padding) + ")\n";
|
||||||
if (IsStruct(field.value.type)) {
|
if (IsStruct(field.value.type)) {
|
||||||
StructBuilderBody(*field.value.type.struct_def,
|
StructBuilderBody(*field.value.type.struct_def,
|
||||||
(field.value.type.struct_def->name + "_").c_str(),
|
(nameprefix + (field.name + "_")).c_str(),
|
||||||
code_ptr);
|
code_ptr);
|
||||||
} else {
|
} else {
|
||||||
code += " builder.Prepend" + GenMethod(field) + "(";
|
code += " builder.Prepend" + GenMethod(field) + "(";
|
||||||
|
|||||||
@@ -27,13 +27,13 @@ func (rcv *Vec3) Test3(obj *Test) *Test {
|
|||||||
return obj
|
return obj
|
||||||
}
|
}
|
||||||
|
|
||||||
func CreateVec3(builder *flatbuffers.Builder, x float32, y float32, z float32, test1 float64, test2 int8, Test_a int16, Test_b int8) flatbuffers.UOffsetT {
|
func CreateVec3(builder *flatbuffers.Builder, x float32, y float32, z float32, test1 float64, test2 int8, test3_a int16, test3_b int8) flatbuffers.UOffsetT {
|
||||||
builder.Prep(16, 32)
|
builder.Prep(16, 32)
|
||||||
builder.Pad(2)
|
builder.Pad(2)
|
||||||
builder.Prep(2, 4)
|
builder.Prep(2, 4)
|
||||||
builder.Pad(1)
|
builder.Pad(1)
|
||||||
builder.PrependInt8(Test_b)
|
builder.PrependInt8(test3_b)
|
||||||
builder.PrependInt16(Test_a)
|
builder.PrependInt16(test3_a)
|
||||||
builder.Pad(1)
|
builder.Pad(1)
|
||||||
builder.PrependInt8(test2)
|
builder.PrependInt8(test2)
|
||||||
builder.PrependFloat64(test1)
|
builder.PrependFloat64(test1)
|
||||||
|
|||||||
@@ -27,13 +27,13 @@ class Vec3(object):
|
|||||||
return obj
|
return obj
|
||||||
|
|
||||||
|
|
||||||
def CreateVec3(builder, x, y, z, test1, test2, Test_a, Test_b):
|
def CreateVec3(builder, x, y, z, test1, test2, test3_a, test3_b):
|
||||||
builder.Prep(16, 32)
|
builder.Prep(16, 32)
|
||||||
builder.Pad(2)
|
builder.Pad(2)
|
||||||
builder.Prep(2, 4)
|
builder.Prep(2, 4)
|
||||||
builder.Pad(1)
|
builder.Pad(1)
|
||||||
builder.PrependInt8(Test_b)
|
builder.PrependInt8(test3_b)
|
||||||
builder.PrependInt16(Test_a)
|
builder.PrependInt16(test3_a)
|
||||||
builder.Pad(1)
|
builder.Pad(1)
|
||||||
builder.PrependInt8(test2)
|
builder.PrependInt8(test2)
|
||||||
builder.PrependFloat64(test1)
|
builder.PrependFloat64(test1)
|
||||||
|
|||||||
@@ -1,2 +1,2 @@
|
|||||||
../flatc -c -j -n -g -b --gen-mutable --no-includes monster_test.fbs monsterdata_test.json
|
../flatc -c -j -n -g -b -p --gen-mutable --no-includes monster_test.fbs monsterdata_test.json
|
||||||
../flatc -b --schema monster_test.fbs
|
../flatc -b --schema monster_test.fbs
|
||||||
|
|||||||
Reference in New Issue
Block a user