1
This commit is contained in:
parent
058af9a9be
commit
e04f8dd6ae
72
f8/utils.h
72
f8/utils.h
@ -33,43 +33,45 @@ namespace f8
|
|||||||
abort();
|
abort();
|
||||||
}
|
}
|
||||||
void* p = (char*)obj + field.offset;
|
void* p = (char*)obj + field.offset;
|
||||||
switch (field.type) {
|
if (reader.KeyExists(field.field_name)) {
|
||||||
case a8::reflect::ET_INT32:
|
switch (field.type) {
|
||||||
{
|
case a8::reflect::ET_INT32:
|
||||||
*((int*)p) = reader.GetValue(field.field_name);
|
{
|
||||||
}
|
*((int*)p) = reader.GetValue(field.field_name);
|
||||||
break;
|
}
|
||||||
case a8::reflect::ET_UINT32:
|
break;
|
||||||
{
|
case a8::reflect::ET_UINT32:
|
||||||
*((unsigned int*)p) = reader.GetValue(field.field_name);
|
{
|
||||||
}
|
*((unsigned int*)p) = reader.GetValue(field.field_name);
|
||||||
break;
|
}
|
||||||
case a8::reflect::ET_INT64:
|
break;
|
||||||
{
|
case a8::reflect::ET_INT64:
|
||||||
*((long long*)p) = reader.GetValue(field.field_name);
|
{
|
||||||
}
|
*((long long*)p) = reader.GetValue(field.field_name);
|
||||||
break;
|
}
|
||||||
case a8::reflect::ET_FLOAT:
|
break;
|
||||||
{
|
case a8::reflect::ET_FLOAT:
|
||||||
*((float*)p) = reader.GetValue(field.field_name).GetDouble();
|
{
|
||||||
}
|
*((float*)p) = reader.GetValue(field.field_name).GetDouble();
|
||||||
break;
|
}
|
||||||
case a8::reflect::ET_DOUBLE:
|
break;
|
||||||
{
|
case a8::reflect::ET_DOUBLE:
|
||||||
*((double*)p) = reader.GetValue(field.field_name);
|
{
|
||||||
}
|
*((double*)p) = reader.GetValue(field.field_name);
|
||||||
break;
|
}
|
||||||
case a8::reflect::ET_STRING:
|
break;
|
||||||
{
|
case a8::reflect::ET_STRING:
|
||||||
*((std::string*)p) = reader.GetValue(field.field_name).GetString();
|
{
|
||||||
}
|
*((std::string*)p) = reader.GetValue(field.field_name).GetString();
|
||||||
break;
|
}
|
||||||
default:
|
break;
|
||||||
{
|
default:
|
||||||
abort();
|
{
|
||||||
|
abort();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
obj->__flags__.set(i);
|
||||||
}
|
}
|
||||||
obj->__flags__.set(i);
|
|
||||||
}
|
}
|
||||||
meta_list.push_back(obj);
|
meta_list.push_back(obj);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user