Commit 5418edea authored by Dominik Charousset's avatar Dominik Charousset

Add missing function overloads and defaults

parent d00fc80e
...@@ -84,6 +84,10 @@ public: ...@@ -84,6 +84,10 @@ public:
dictionary() = default; dictionary() = default;
dictionary(dictionary&&) = default;
dictionary(const dictionary&) = default;
dictionary(std::initializer_list<value_type> xs) : xs_(xs) { dictionary(std::initializer_list<value_type> xs) : xs_(xs) {
// nop // nop
} }
...@@ -93,6 +97,10 @@ public: ...@@ -93,6 +97,10 @@ public:
// nop // nop
} }
dictionary& operator=(dictionary&&) = default;
dictionary& operator=(const dictionary&) = default;
// -- iterator access -------------------------------------------------------- // -- iterator access --------------------------------------------------------
iterator begin() noexcept { iterator begin() noexcept {
...@@ -189,6 +197,14 @@ public: ...@@ -189,6 +197,14 @@ public:
true}; true};
} }
iterator_bool_pair insert(value_type kvp) {
return emplace(kvp.first, std::move(kvp.second));
}
iterator insert(iterator hint, value_type kvp) {
return emplace_hint(hint, kvp.first, std::move(kvp.second));
}
template <class T> template <class T>
iterator_bool_pair insert(string_view key, T&& value) { iterator_bool_pair insert(string_view key, T&& value) {
return emplace(key, std::forward<T>(value)); return emplace(key, std::forward<T>(value));
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment