Fixed VS2010 compile error.

Change-Id: Ibd970d30b51f77a2ac9c125e400c9f1b19a81cbc
parent 4898809e
......@@ -116,7 +116,7 @@ class LobsterGenerator : public BaseGenerator {
if (struct_def.fixed) {
code += name + "{ buf_, pos_ + " + offsets + " }\n";
} else {
code += std::string("o := buf_.flatbuffers_field_") +
code += std::string("o := buf_.flatbuffers_field_") +
(field.value.type.struct_def->fixed ? "struct" : "table") +
"(pos_, " + offsets + ")\n if o: " + name +
" { buf_, o } else: nil\n";
......@@ -149,11 +149,15 @@ class LobsterGenerator : public BaseGenerator {
break;
}
case BASE_TYPE_UNION: {
for (auto &ev : field.value.type.enum_def->vals.vec) if (ev->value) {
code += def + "_as_" + ev->name + "():\n " +
NamespacedName(*ev->union_type.struct_def) +
" { buf_, buf_.flatbuffers_field_table(pos_, " + offsets +
") }\n";
for (auto it = field.value.type.enum_def->vals.vec.begin();
it != field.value.type.enum_def->vals.vec.end(); ++it) {
auto &ev = **it;
if (ev.value) {
code += def + "_as_" + ev.name + "():\n " +
NamespacedName(*ev.union_type.struct_def) +
" { buf_, buf_.flatbuffers_field_table(pos_, " + offsets +
") }\n";
}
}
break;
}
......@@ -293,7 +297,7 @@ class LobsterGenerator : public BaseGenerator {
void StructBuilderBody(const StructDef &struct_def,
const char *nameprefix, std::string *code_ptr) {
std::string &code = *code_ptr;
code += " b_.Prep(" + NumToString(struct_def.minalign) + ", " +
code += " b_.Prep(" + NumToString(struct_def.minalign) + ", " +
NumToString(struct_def.bytesize) + ")\n";
for (auto it = struct_def.fields.vec.rbegin();
it != struct_def.fields.vec.rend(); ++it) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment