libdonut
2.3.2
Application framework for cross-platform game development in C++20
|
JSON object type whose API mimics that of std::multimap<String, Value>. More...
#include <donut/json.hpp>
Public Types | |
using | key_type = String |
using | mapped_type = Value |
using | value_type = std::pair< String, Value > |
using | size_type = typename std::vector< value_type >::size_type |
using | difference_type = typename std::vector< value_type >::difference_type |
using | reference = typename std::vector< value_type >::reference |
using | const_reference = typename std::vector< value_type >::const_reference |
using | pointer = typename std::vector< value_type >::pointer |
using | const_pointer = typename std::vector< value_type >::const_pointer |
using | iterator = typename std::vector< value_type >::iterator |
using | const_iterator = typename std::vector< value_type >::const_iterator |
using | reverse_iterator = typename std::vector< value_type >::reverse_iterator |
using | const_reverse_iterator = typename std::vector< value_type >::const_reverse_iterator |
Public Member Functions | |
Object () noexcept | |
~Object () | |
template<typename InputIt > | |
Object (InputIt first, InputIt last) | |
Object (std::initializer_list< value_type > ilist) | |
Object (const Object &other) | |
Object (Object &&other) noexcept | |
Object & | operator= (const Object &other) |
Object & | operator= (Object &&other) noexcept |
Object & | operator= (std::initializer_list< value_type > ilist) |
Value & | at (std::string_view name) |
const Value & | at (std::string_view name) const |
Value & | operator[] (const String &k) |
Value & | operator[] (String &&k) |
iterator | begin () noexcept |
const_iterator | begin () const noexcept |
const_iterator | cbegin () const noexcept |
iterator | end () noexcept |
const_iterator | end () const noexcept |
const_iterator | cend () const noexcept |
reverse_iterator | rbegin () noexcept |
const_reverse_iterator | rbegin () const noexcept |
const_reverse_iterator | crbegin () const noexcept |
reverse_iterator | rend () noexcept |
const_reverse_iterator | rend () const noexcept |
const_reverse_iterator | crend () const noexcept |
bool | empty () const noexcept |
size_type | size () const noexcept |
size_type | max_size () const noexcept |
void | clear () noexcept |
template<typename P > | |
std::pair< iterator, bool > | insert (P &&value) |
template<typename P > | |
iterator | insert (const_iterator pos, P &&value) |
template<typename InputIt > | |
void | insert (InputIt first, InputIt last) |
void | insert (std::initializer_list< value_type > ilist) |
template<typename... Args> | |
std::pair< iterator, bool > | emplace (Args &&... args) |
template<typename... Args> | |
iterator | emplace_hint (const_iterator hint, Args &&... args) |
template<typename... Args> | |
std::pair< iterator, bool > | try_emplace (const String &k, Args &&... args) |
template<typename... Args> | |
std::pair< iterator, bool > | try_emplace (String &&k, Args &&... args) |
template<typename... Args> | |
iterator | try_emplace (const_iterator, const String &k, Args &&... args) |
template<typename... Args> | |
iterator | try_emplace (const_iterator, String &&k, Args &&... args) |
iterator | erase (const_iterator pos) |
size_type | erase (std::string_view name) |
void | swap (Object &other) noexcept |
size_type | count (std::string_view name) const noexcept |
bool | contains (std::string_view name) const noexcept |
iterator | find (std::string_view name) noexcept |
const_iterator | find (std::string_view name) const noexcept |
std::pair< iterator, iterator > | equal_range (std::string_view name) noexcept |
std::pair< const_iterator, const_iterator > | equal_range (std::string_view name) const noexcept |
iterator | lower_bound (std::string_view name) noexcept |
const_iterator | lower_bound (std::string_view name) const noexcept |
iterator | upper_bound (std::string_view name) noexcept |
const_iterator | upper_bound (std::string_view name) const noexcept |
bool | operator== (const Object &other) const noexcept |
std::partial_ordering | operator<=> (const Object &other) const noexcept |
Friends | |
void | swap (Object &a, Object &b) noexcept |
template<typename Predicate > | |
size_type | erase_if (Object &container, Predicate predicate) |
JSON object type whose API mimics that of std::multimap<String, Value>.
using donut::json::Object::key_type = String |
using donut::json::Object::value_type = std::pair<String, Value> |
using donut::json::Object::size_type = typename std::vector<value_type>::size_type |
using donut::json::Object::difference_type = typename std::vector<value_type>::difference_type |
using donut::json::Object::reference = typename std::vector<value_type>::reference |
using donut::json::Object::const_reference = typename std::vector<value_type>::const_reference |
using donut::json::Object::pointer = typename std::vector<value_type>::pointer |
using donut::json::Object::const_pointer = typename std::vector<value_type>::const_pointer |
using donut::json::Object::iterator = typename std::vector<value_type>::iterator |
using donut::json::Object::const_iterator = typename std::vector<value_type>::const_iterator |
using donut::json::Object::reverse_iterator = typename std::vector<value_type>::reverse_iterator |
using donut::json::Object::const_reverse_iterator = typename std::vector<value_type>::const_reverse_iterator |
|
inlinedefaultnoexcept |
|
inlinedefault |
|
inline |
|
inline |
|
inlinedefault |
|
inlinedefaultnoexcept |
|
inline |
|
inline |
|
inline |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inline |
|
inline |
|
inline |
void donut::json::Object::insert | ( | std::initializer_list< value_type > | ilist | ) |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |