mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-04-06 01:45:38 +08:00
refs #679 Missing values in json should not cause members of default-constructed object to be overwritten.
This commit is contained in:
@@ -303,7 +303,10 @@ namespace BlackMisc
|
||||
{
|
||||
baseConvertFromJson(static_cast<BaseOfT<Derived> *>(derived()), json);
|
||||
auto meta = introspect<Derived>().without(MetaFlags<DisabledForJson>());
|
||||
meta.forEachMemberName(*derived(), [ & ](auto & member, const QString & name) { json.value(name) >> member; });
|
||||
meta.forEachMemberName(*derived(), [ & ](auto & member, const QString & name)
|
||||
{
|
||||
if (json.contains(name)) { json.value(name) >> member; }
|
||||
});
|
||||
}
|
||||
|
||||
//! Assign from JSON object string
|
||||
|
||||
Reference in New Issue
Block a user