diff options
author | Roman Smrž <roman.smrz@seznam.cz> | 2023-06-17 21:58:32 +0200 |
---|---|---|
committer | Roman Smrž <roman.smrz@seznam.cz> | 2023-06-18 22:41:23 +0200 |
commit | e7d6aafd3c9353d9e6169ca775cf1dae618238cd (patch) | |
tree | 6df8f296d7db8dd9e7d23f5774009ccc5ee269a7 /src/contact.cpp | |
parent | 2130d07cbf91e016fd21a730a8449dd4bd34a093 (diff) |
Storage: iterable type for record item list
Diffstat (limited to 'src/contact.cpp')
-rw-r--r-- | src/contact.cpp | 14 |
1 files changed, 2 insertions, 12 deletions
diff --git a/src/contact.cpp b/src/contact.cpp index 0050f95..01aa710 100644 --- a/src/contact.cpp +++ b/src/contact.cpp @@ -111,19 +111,9 @@ ContactData ContactData::load(const Ref & ref) if (!rec) return ContactData(); - vector<Stored<ContactData>> prev; - for (const auto & x : rec->items("PREV")) - if (const auto & p = x.as<ContactData>()) - prev.push_back(*p); - - vector<Stored<Signed<IdentityData>>> identity; - for (const auto & x : rec->items("identity")) - if (const auto & i = x.asRef()) - identity.push_back(*i); - return ContactData { - .prev = std::move(prev), - .identity = std::move(identity), + .prev = rec->items("PREV").as<ContactData>(), + .identity = rec->items("identity").as<Signed<IdentityData>>(), .name = rec->item("name").asText(), }; } |