int typeId(TypeDescription::GetTypeId(v.GetLiteral().GetTypeName()));
const TypeDescription &td(TypeDescription::Get(typeId));
char *object(new char[td.Size()]);
+ td.Construct(object);
int id(values[typeId].size());
values[typeId].push_back(object);
ReadObject(typeId, id, object, *v.GetLiteral().GetProperties());
const TypeDescription &td(TypeDescription::Get(typeId));
id = values[typeId].size();
char *object(new char[td.Size()]);
+ td.Construct(object);
ReadObject(typeId, id, object, *v.GetLiteral().GetProperties());
}
break;
const TypeDescription &td(TypeDescription::Get(typeId));
int id(values[typeId].size());
char *object(new char[td.Size()]);
+ td.Construct(object);
values[typeId].push_back(object);
ReadObject(typeId, id, object, *dfn.GetProperties());
parsedDefinitions.insert(make_pair(dfn.Identifier(), ParsedDefinition(&dfn, typeId, id)));
char *iter(aggregate);
vector<PropertyList *> list(i->second->GetLiteral().GetPropertyLists());
for (vector<PropertyList *>::const_iterator j(list.begin()), end(list.end()); j != end; ++j, iter += fieldType.Size()) {
+ fieldType.Construct(iter);
ReadObject(fieldType.TypeId(), -1, iter, **j);
}
if (fd.IsReferenced()) {