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

@@ -62,7 +62,7 @@ class LobsterGenerator : public BaseGenerator {
auto bits = NumToString(SizeOf(type.base_type) * 8);
if (IsInteger(type.base_type)) return "int" + bits;
if (IsFloat(type.base_type)) return "float" + bits;
if (type.base_type == BASE_TYPE_STRING) return "string";
if (IsString(type)) return "string";
if (type.base_type == BASE_TYPE_STRUCT) return "table";
return "none";
}
@@ -152,7 +152,7 @@ class LobsterGenerator : public BaseGenerator {
code += NamespacedName(*field.value.type.struct_def) + " { buf_, " +
start + " }\n";
} else {
if (vectortype.base_type == BASE_TYPE_STRING)
if (IsString(vectortype))
code += "buf_.flatbuffers_string";
else
code += "buf_.read_" + GenTypeName(vectortype) + "_le";
@@ -176,7 +176,7 @@ class LobsterGenerator : public BaseGenerator {
}
default: FLATBUFFERS_ASSERT(0);
}
if (field.value.type.base_type == BASE_TYPE_VECTOR) {
if (IsVector(field.value.type)) {
code += def +
"_length():\n return "
"buf_.flatbuffers_field_vector_len(pos_, " +
@@ -210,7 +210,7 @@ class LobsterGenerator : public BaseGenerator {
it != struct_def.fields.vec.end(); ++it) {
auto &field = **it;
if (field.deprecated) continue;
if (field.value.type.base_type == BASE_TYPE_VECTOR) {
if (IsVector(field.value.type)) {
code += "def " + NormalizedName(struct_def) + "Start" +
MakeCamel(NormalizedName(field)) +
"Vector(b_:flatbuffers_builder, n_:int):\n b_.StartVector(";