return type.enum_def != nullptr && type.enum_def->is_union;
}
+inline bool IsUnionType(const Type &type) {
+ return IsUnion(type) && IsInteger(type.base_type);
+}
+
inline bool IsVector(const Type &type) {
return type.base_type == BASE_TYPE_VECTOR;
}
}
bool VectorElementUserFacing(const Type &type) const {
- return opts_.g_cpp_std >= cpp::CPP_STD_17 && opts_.g_only_fixed_enums &&
- IsEnum(type);
+ return (opts_.scoped_enums && IsEnum(type)) ||
+ (opts_.g_cpp_std >= cpp::CPP_STD_17 && opts_.g_only_fixed_enums &&
+ IsEnum(type));
}
void GenComment(const std::vector<std::string> &dc, const char *prefix = "") {