@@ -785,7 +785,7 @@ class CppGenerator : public BaseGenerator {
785
785
struct_def ? (struct_def->fixed ? " ST_STRUCT" : " ST_TABLE" )
786
786
: (enum_def->is_union ? " ST_UNION" : " ST_ENUM" ));
787
787
auto num_fields =
788
- struct_def ? struct_def->fields .vec .size () : enum_def->vals . vec . size ();
788
+ struct_def ? struct_def->fields .vec .size () : enum_def->size ();
789
789
code_.SetValue (" NUM_FIELDS" , NumToString (num_fields));
790
790
std::vector<std::string> names;
791
791
std::vector<Type> types;
@@ -798,13 +798,13 @@ class CppGenerator : public BaseGenerator {
798
798
types.push_back (field.value .type );
799
799
}
800
800
} else {
801
- for (auto it = enum_def->vals . vec . begin (); it != enum_def->vals . vec .end ();
801
+ for (auto it = enum_def->Vals (). begin (); it != enum_def->Vals () .end ();
802
802
++it) {
803
803
const auto &ev = **it;
804
804
names.push_back (Name (ev));
805
805
types.push_back (enum_def->is_union ? ev.union_type
806
806
: Type (enum_def->underlying_type ));
807
- if (static_cast <int64_t >(it - enum_def->vals . vec .begin ()) != ev.value ) {
807
+ if (static_cast <int64_t >(it - enum_def->Vals () .begin ()) != ev.value ) {
808
808
consecutive_enum_from_zero = false ;
809
809
}
810
810
}
@@ -852,7 +852,7 @@ class CppGenerator : public BaseGenerator {
852
852
}
853
853
std::string vs;
854
854
if (enum_def && !consecutive_enum_from_zero) {
855
- for (auto it = enum_def->vals . vec . begin (); it != enum_def->vals . vec .end ();
855
+ for (auto it = enum_def->Vals (). begin (); it != enum_def->Vals () .end ();
856
856
++it) {
857
857
const auto &ev = **it;
858
858
if (!vs.empty ()) vs += " , " ;
@@ -919,8 +919,7 @@ class CppGenerator : public BaseGenerator {
919
919
920
920
int64_t anyv = 0 ;
921
921
const EnumVal *minv = nullptr , *maxv = nullptr ;
922
- for (auto it = enum_def.vals .vec .begin (); it != enum_def.vals .vec .end ();
923
- ++it) {
922
+ for (auto it = enum_def.Vals ().begin (); it != enum_def.Vals ().end (); ++it) {
924
923
const auto &ev = **it;
925
924
926
925
GenComment (ev.doc_comment , " " );
@@ -966,15 +965,14 @@ class CppGenerator : public BaseGenerator {
966
965
code_ += " " ;
967
966
968
967
// Generate an array of all enumeration values
969
- auto num_fields = NumToString (enum_def.vals . vec . size ());
968
+ auto num_fields = NumToString (enum_def.size ());
970
969
code_ += " inline const {{ENUM_NAME}} (&EnumValues{{ENUM_NAME}}())[" +
971
970
num_fields + " ] {" ;
972
971
code_ += " static const {{ENUM_NAME}} values[] = {" ;
973
- for (auto it = enum_def.vals .vec .begin (); it != enum_def.vals .vec .end ();
974
- ++it) {
972
+ for (auto it = enum_def.Vals ().begin (); it != enum_def.Vals ().end (); ++it) {
975
973
const auto &ev = **it;
976
974
auto value = GetEnumValUse (enum_def, ev);
977
- auto suffix = *it != enum_def.vals . vec .back () ? " ," : " " ;
975
+ auto suffix = *it != enum_def.Vals () .back () ? " ," : " " ;
978
976
code_ += " " + value + suffix;
979
977
}
980
978
code_ += " };" ;
@@ -996,8 +994,8 @@ class CppGenerator : public BaseGenerator {
996
994
code_ += " inline const char * const *EnumNames{{ENUM_NAME}}() {" ;
997
995
code_ += " static const char * const names[] = {" ;
998
996
999
- auto val = enum_def.vals . vec .front ()->value ;
1000
- for (auto it = enum_def.vals . vec . begin (); it != enum_def.vals . vec .end ();
997
+ auto val = enum_def.Vals () .front ()->value ;
998
+ for (auto it = enum_def.Vals (). begin (); it != enum_def.Vals () .end ();
1001
999
++it) {
1002
1000
const auto &ev = **it;
1003
1001
while (val++ != ev.value ) { code_ += " \"\" ," ; }
@@ -1032,7 +1030,7 @@ class CppGenerator : public BaseGenerator {
1032
1030
1033
1031
code_ += " switch (e) {" ;
1034
1032
1035
- for (auto it = enum_def.vals . vec . begin (); it != enum_def.vals . vec .end ();
1033
+ for (auto it = enum_def.Vals (). begin (); it != enum_def.Vals () .end ();
1036
1034
++it) {
1037
1035
const auto &ev = **it;
1038
1036
code_ += " case " + GetEnumValUse (enum_def, ev) + " : return \" " +
@@ -1048,11 +1046,11 @@ class CppGenerator : public BaseGenerator {
1048
1046
1049
1047
// Generate type traits for unions to map from a type to union enum value.
1050
1048
if (enum_def.is_union && !enum_def.uses_multiple_type_instances ) {
1051
- for (auto it = enum_def.vals . vec . begin (); it != enum_def.vals . vec .end ();
1049
+ for (auto it = enum_def.Vals (). begin (); it != enum_def.Vals () .end ();
1052
1050
++it) {
1053
1051
const auto &ev = **it;
1054
1052
1055
- if (it == enum_def.vals . vec .begin ()) {
1053
+ if (it == enum_def.Vals () .begin ()) {
1056
1054
code_ += " template<typename T> struct {{ENUM_NAME}}Traits {" ;
1057
1055
} else {
1058
1056
auto name = GetUnionElement (ev, true , true );
@@ -1114,10 +1112,10 @@ class CppGenerator : public BaseGenerator {
1114
1112
code_ += " " + UnionPackSignature (enum_def, true ) + " ;" ;
1115
1113
code_ += " " ;
1116
1114
1117
- for (auto it = enum_def.vals . vec . begin (); it != enum_def.vals . vec .end ();
1115
+ for (auto it = enum_def.Vals (). begin (); it != enum_def.Vals () .end ();
1118
1116
++it) {
1119
1117
const auto &ev = **it;
1120
- if (! ev.value ) { continue ; }
1118
+ if (ev.IsZero () ) { continue ; }
1121
1119
1122
1120
const auto native_type =
1123
1121
NativeName (GetUnionElement (ev, true , true , true ),
@@ -1148,11 +1146,11 @@ class CppGenerator : public BaseGenerator {
1148
1146
code_ += " if (lhs.type != rhs.type) return false;" ;
1149
1147
code_ += " switch (lhs.type) {" ;
1150
1148
1151
- for (auto it = enum_def.vals . vec . begin (); it != enum_def.vals . vec .end ();
1149
+ for (auto it = enum_def.Vals (). begin (); it != enum_def.Vals () .end ();
1152
1150
++it) {
1153
1151
const auto &ev = **it;
1154
1152
code_.SetValue (" NATIVE_ID" , GetEnumValUse (enum_def, ev));
1155
- if (ev.value ) {
1153
+ if (ev.IsNonZero () ) {
1156
1154
const auto native_type =
1157
1155
NativeName (GetUnionElement (ev, true , true , true ),
1158
1156
ev.union_type .struct_def , parser_.opts );
@@ -1204,12 +1202,11 @@ class CppGenerator : public BaseGenerator {
1204
1202
1205
1203
code_ += " inline " + UnionVerifySignature (enum_def) + " {" ;
1206
1204
code_ += " switch (type) {" ;
1207
- for (auto it = enum_def.vals .vec .begin (); it != enum_def.vals .vec .end ();
1208
- ++it) {
1205
+ for (auto it = enum_def.Vals ().begin (); it != enum_def.Vals ().end (); ++it) {
1209
1206
const auto &ev = **it;
1210
1207
code_.SetValue (" LABEL" , GetEnumValUse (enum_def, ev));
1211
1208
1212
- if (ev.value ) {
1209
+ if (ev.IsNonZero () ) {
1213
1210
code_.SetValue (" TYPE" , GetUnionElement (ev, true , true ));
1214
1211
code_ += " case {{LABEL}}: {" ;
1215
1212
auto getptr =
@@ -1257,10 +1254,10 @@ class CppGenerator : public BaseGenerator {
1257
1254
// Generate union Unpack() and Pack() functions.
1258
1255
code_ += " inline " + UnionUnPackSignature (enum_def, false ) + " {" ;
1259
1256
code_ += " switch (type) {" ;
1260
- for (auto it = enum_def.vals . vec . begin (); it != enum_def.vals . vec .end ();
1257
+ for (auto it = enum_def.Vals (). begin (); it != enum_def.Vals () .end ();
1261
1258
++it) {
1262
1259
const auto &ev = **it;
1263
- if (! ev.value ) { continue ; }
1260
+ if (ev.IsZero () ) { continue ; }
1264
1261
1265
1262
code_.SetValue (" LABEL" , GetEnumValUse (enum_def, ev));
1266
1263
code_.SetValue (" TYPE" , GetUnionElement (ev, true , true ));
@@ -1287,10 +1284,10 @@ class CppGenerator : public BaseGenerator {
1287
1284
1288
1285
code_ += " inline " + UnionPackSignature (enum_def, false ) + " {" ;
1289
1286
code_ += " switch (type) {" ;
1290
- for (auto it = enum_def.vals . vec . begin (); it != enum_def.vals . vec .end ();
1287
+ for (auto it = enum_def.Vals (). begin (); it != enum_def.Vals () .end ();
1291
1288
++it) {
1292
1289
auto &ev = **it;
1293
- if (! ev.value ) { continue ; }
1290
+ if (ev.IsZero () ) { continue ; }
1294
1291
1295
1292
code_.SetValue (" LABEL" , GetEnumValUse (enum_def, ev));
1296
1293
code_.SetValue (" TYPE" ,
@@ -1324,10 +1321,10 @@ class CppGenerator : public BaseGenerator {
1324
1321
" {{ENUM_NAME}}Union &u) FLATBUFFERS_NOEXCEPT : type(u.type), "
1325
1322
" value(nullptr) {" ;
1326
1323
code_ += " switch (type) {" ;
1327
- for (auto it = enum_def.vals . vec . begin (); it != enum_def.vals . vec .end ();
1324
+ for (auto it = enum_def.Vals (). begin (); it != enum_def.Vals () .end ();
1328
1325
++it) {
1329
1326
const auto &ev = **it;
1330
- if (! ev.value ) { continue ; }
1327
+ if (ev.IsZero () ) { continue ; }
1331
1328
code_.SetValue (" LABEL" , GetEnumValUse (enum_def, ev));
1332
1329
code_.SetValue (" TYPE" ,
1333
1330
NativeName (GetUnionElement (ev, true , true , true ),
@@ -1370,10 +1367,10 @@ class CppGenerator : public BaseGenerator {
1370
1367
1371
1368
code_ += " inline void {{ENUM_NAME}}Union::Reset() {" ;
1372
1369
code_ += " switch (type) {" ;
1373
- for (auto it = enum_def.vals . vec . begin (); it != enum_def.vals . vec .end ();
1370
+ for (auto it = enum_def.Vals (). begin (); it != enum_def.Vals () .end ();
1374
1371
++it) {
1375
1372
const auto &ev = **it;
1376
- if (! ev.value ) { continue ; }
1373
+ if (ev.IsZero () ) { continue ; }
1377
1374
code_.SetValue (" LABEL" , GetEnumValUse (enum_def, ev));
1378
1375
code_.SetValue (" TYPE" ,
1379
1376
NativeName (GetUnionElement (ev, true , true , true ),
@@ -1834,8 +1831,7 @@ class CppGenerator : public BaseGenerator {
1834
1831
" template<typename T> "
1835
1832
" const T *{{NULLABLE_EXT}}{{FIELD_NAME}}_as() const;" ;
1836
1833
1837
- for (auto u_it = u->vals .vec .begin (); u_it != u->vals .vec .end ();
1838
- ++u_it) {
1834
+ for (auto u_it = u->Vals ().begin (); u_it != u->Vals ().end (); ++u_it) {
1839
1835
auto &ev = **u_it;
1840
1836
if (ev.union_type .base_type == BASE_TYPE_NONE) { continue ; }
1841
1837
auto full_struct_name = GetUnionElement (ev, true , true );
@@ -1967,7 +1963,7 @@ class CppGenerator : public BaseGenerator {
1967
1963
1968
1964
code_.SetValue (" FIELD_NAME" , Name (field));
1969
1965
1970
- for (auto u_it = u->vals . vec . begin (); u_it != u->vals . vec .end (); ++u_it) {
1966
+ for (auto u_it = u->Vals (). begin (); u_it != u->Vals () .end (); ++u_it) {
1971
1967
auto &ev = **u_it;
1972
1968
if (ev.union_type .base_type == BASE_TYPE_NONE) { continue ; }
1973
1969
0 commit comments