Index: compiled/StringMap.h |
=================================================================== |
--- a/compiled/StringMap.h |
+++ b/compiled/StringMap.h |
@@ -48,16 +48,20 @@ |
struct StringSetEntry |
{ |
typedef Key key_type; |
typedef const String& key_type_cref; |
typedef size_t size_type; |
key_type first; |
+ StringSetEntry& operator=(const StringSetEntry&) = default; |
+ StringSetEntry& operator=(StringSetEntry&&) = default; |
+ |
+ StringSetEntry(const StringSetEntry&) = default; |
StringSetEntry(key_type_cref key = key_type()) |
{ |
if (!key.is_invalid()) |
first.reset(key); |
} |
bool equals(key_type_cref other) const |
{ |
@@ -88,19 +92,22 @@ |
template<typename Key, typename Value> |
struct StringMapEntry : StringSetEntry<Key> |
{ |
typedef StringSetEntry<Key> super; |
typedef Value value_type; |
value_type second; |
+ StringMapEntry& operator=(const StringMapEntry&) = default; |
+ StringMapEntry& operator=(StringMapEntry&&) = default; |
+ |
StringMapEntry(typename super::key_type_cref key = Key(), |
value_type value = value_type()) |
- : super(key), second(value) |
+ : super(key), second(std::move(value)) |
{ |
} |
void erase() |
{ |
super::erase(); |
second = value_type(); |
} |