Mass Refactoring to use IsString and other BASE_TYPE helpers (#6193)

* Updated SupportsAdvancedUnionFeatures to look out for string

* Mass refactoring to use BASE_TYPE helper functions.

Co-authored-by: Casper Neo <cneo@google.com>
This commit is contained in:
Casper
2020-10-20 08:00:31 -07:00
committed by GitHub
parent 8f6fa4b715
commit fe8e3c7e5d
15 changed files with 125 additions and 128 deletions

View File

@@ -370,7 +370,7 @@ class PythonGenerator : public BaseGenerator {
code += "return " + GenGetter(field.value.type);
code += "a + flatbuffers.number_types.UOffsetTFlags.py_type(j * ";
code += NumToString(InlineSize(vectortype)) + "))\n";
if (vectortype.base_type == BASE_TYPE_STRING) {
if (IsString(vectortype)) {
code += Indent + Indent + "return \"\"\n";
} else {
code += Indent + Indent + "return 0\n";
@@ -400,7 +400,7 @@ class PythonGenerator : public BaseGenerator {
code += MakeCamel(GenTypeGet(field.value.type));
code += "Flags, o)\n";
if (vectortype.base_type == BASE_TYPE_STRING) {
if (IsString(vectortype)) {
code += Indent + Indent + "return \"\"\n";
} else {
code += Indent + Indent + "return 0\n";
@@ -614,8 +614,7 @@ class PythonGenerator : public BaseGenerator {
default: FLATBUFFERS_ASSERT(0);
}
}
if (field.value.type.base_type == BASE_TYPE_VECTOR ||
field.value.type.base_type == BASE_TYPE_ARRAY) {
if (IsVector(field.value.type) || IsArray(field.value.type)) {
GetVectorLen(struct_def, field, code_ptr);
GetVectorIsNone(struct_def, field, code_ptr);
}
@@ -642,7 +641,7 @@ class PythonGenerator : public BaseGenerator {
auto offset = it - struct_def.fields.vec.begin();
BuildFieldOfTable(struct_def, field, offset, code_ptr);
if (field.value.type.base_type == BASE_TYPE_VECTOR) {
if (IsVector(field.value.type)) {
BuildVectorOfTable(struct_def, field, code_ptr);
}
}
@@ -1265,7 +1264,7 @@ class PythonGenerator : public BaseGenerator {
// each string element. And this generated code, needs to be
// placed ahead of code_prefix.
auto vectortype = field.value.type.VectorType();
if (vectortype.base_type == BASE_TYPE_STRING) {
if (IsString(vectortype)) {
code_prefix += GenIndents(3) + MakeLowerCamel(field) + "list = []";
code_prefix += GenIndents(3) + "for i in range(len(self." +
field_instance_name + ")):";