Avoid instantiating an std::string when calling serializer
This commit is contained in:
parent
c8a865528e
commit
f2042c59a5
|
@ -199,7 +199,7 @@ public:
|
||||||
if((*d_parent.d_txn)->get(d_parent.d_parent->d_main, id, data))
|
if((*d_parent.d_txn)->get(d_parent.d_parent->d_main, id, data))
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
serFromString(data.get<std::string>(), t);
|
serFromString(data.get<string_view>(), t);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -260,10 +260,10 @@ public:
|
||||||
if(d_on_index) {
|
if(d_on_index) {
|
||||||
if((*d_parent->d_txn)->get(d_parent->d_parent->d_main, d_id, d_data))
|
if((*d_parent->d_txn)->get(d_parent->d_parent->d_main, d_id, d_data))
|
||||||
throw LMDBError("Missing id in constructor");
|
throw LMDBError("Missing id in constructor");
|
||||||
serFromString(d_data.get<std::string>(), d_t);
|
serFromString(d_data.get<string_view>(), d_t);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
serFromString(d_id.get<std::string>(), d_t);
|
serFromString(d_id.get<string_view>(), d_t);
|
||||||
}
|
}
|
||||||
|
|
||||||
explicit iter_t(Parent* parent, typename Parent::cursor_t&& cursor, const std::string& prefix) :
|
explicit iter_t(Parent* parent, typename Parent::cursor_t&& cursor, const std::string& prefix) :
|
||||||
|
@ -285,10 +285,10 @@ public:
|
||||||
if(d_on_index) {
|
if(d_on_index) {
|
||||||
if((*d_parent->d_txn)->get(d_parent->d_parent->d_main, d_id, d_data))
|
if((*d_parent->d_txn)->get(d_parent->d_parent->d_main, d_id, d_data))
|
||||||
throw LMDBError("Missing id in constructor");
|
throw LMDBError("Missing id in constructor");
|
||||||
serFromString(d_data.get<std::string>(), d_t);
|
serFromString(d_data.get<string_view>(), d_t);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
serFromString(d_id.get<std::string>(), d_t);
|
serFromString(d_id.get<string_view>(), d_t);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -345,13 +345,13 @@ public:
|
||||||
if(filter && !filter(data))
|
if(filter && !filter(data))
|
||||||
goto next;
|
goto next;
|
||||||
|
|
||||||
serFromString(data.get<std::string>(), d_t);
|
serFromString(data.get<string_view>(), d_t);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
if(filter && !filter(data))
|
if(filter && !filter(data))
|
||||||
goto next;
|
goto next;
|
||||||
|
|
||||||
serFromString(d_id.get<std::string>(), d_t);
|
serFromString(d_id.get<string_view>(), d_t);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return *this;
|
return *this;
|
||||||
|
@ -617,7 +617,7 @@ public:
|
||||||
while(!cursor.get(key, data, first ? MDB_FIRST : MDB_NEXT)) {
|
while(!cursor.get(key, data, first ? MDB_FIRST : MDB_NEXT)) {
|
||||||
first = false;
|
first = false;
|
||||||
T t;
|
T t;
|
||||||
serFromString(data.get<std::string>(), t);
|
serFromString(data.get<string_view>(), t);
|
||||||
clearIndex(key.get<uint32_t>(), t);
|
clearIndex(key.get<uint32_t>(), t);
|
||||||
cursor.del();
|
cursor.del();
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue