A Discrete-Event Network Simulator
API
nlohmann::ordered_map< Key, T, IgnoredLess, Allocator > Struct Template Reference

ordered_map: a minimal map-like container that preserves insertion order for use within nlohmann::basic_json<ordered_map> More...

#include "json.h"

+ Inheritance diagram for nlohmann::ordered_map< Key, T, IgnoredLess, Allocator >:
+ Collaboration diagram for nlohmann::ordered_map< Key, T, IgnoredLess, Allocator >:

Public Types

using Container = std::vector< std::pair< const Key, T >, Allocator >
 
using key_type = Key
 
using mapped_type = T
 

Public Member Functions

 ordered_map (const Allocator &alloc=Allocator())
 
template<class It >
 ordered_map (It first, It last, const Allocator &alloc=Allocator())
 
 ordered_map (std::initializer_list< T > init, const Allocator &alloc=Allocator())
 
T & at (const Key &key)
 
const T & at (const Key &key) const
 
size_type count (const Key &key) const
 
std::pair< iterator, bool > emplace (const key_type &key, T &&t)
 
size_type erase (const Key &key)
 
iterator erase (iterator pos)
 
iterator find (const Key &key)
 
const_iterator find (const Key &key) const
 
std::pair< iterator, bool > insert (const value_type &value)
 
std::pair< iterator, bool > insert (value_type &&value)
 
T & operator[] (const Key &key)
 
const T & operator[] (const Key &key) const
 

Detailed Description

template<class Key, class T, class IgnoredLess = std::less<Key>, class Allocator = std::allocator<std::pair<const Key, T>>>
struct nlohmann::ordered_map< Key, T, IgnoredLess, Allocator >

ordered_map: a minimal map-like container that preserves insertion order for use within nlohmann::basic_json<ordered_map>

Definition at line 16483 of file json.h.

Member Typedef Documentation

◆ Container

template<class Key , class T , class IgnoredLess = std::less<Key>, class Allocator = std::allocator<std::pair<const Key, T>>>
using nlohmann::ordered_map< Key, T, IgnoredLess, Allocator >::Container = std::vector<std::pair<const Key, T>, Allocator>

Definition at line 16487 of file json.h.

◆ key_type

template<class Key , class T , class IgnoredLess = std::less<Key>, class Allocator = std::allocator<std::pair<const Key, T>>>
using nlohmann::ordered_map< Key, T, IgnoredLess, Allocator >::key_type = Key

Definition at line 16485 of file json.h.

◆ mapped_type

template<class Key , class T , class IgnoredLess = std::less<Key>, class Allocator = std::allocator<std::pair<const Key, T>>>
using nlohmann::ordered_map< Key, T, IgnoredLess, Allocator >::mapped_type = T

Definition at line 16486 of file json.h.

Constructor & Destructor Documentation

◆ ordered_map() [1/3]

template<class Key , class T , class IgnoredLess = std::less<Key>, class Allocator = std::allocator<std::pair<const Key, T>>>
nlohmann::ordered_map< Key, T, IgnoredLess, Allocator >::ordered_map ( const Allocator &  alloc = Allocator())
inline

Definition at line 16495 of file json.h.

◆ ordered_map() [2/3]

template<class Key , class T , class IgnoredLess = std::less<Key>, class Allocator = std::allocator<std::pair<const Key, T>>>
template<class It >
nlohmann::ordered_map< Key, T, IgnoredLess, Allocator >::ordered_map ( It  first,
It  last,
const Allocator &  alloc = Allocator() 
)
inline

Definition at line 16497 of file json.h.

◆ ordered_map() [3/3]

template<class Key , class T , class IgnoredLess = std::less<Key>, class Allocator = std::allocator<std::pair<const Key, T>>>
nlohmann::ordered_map< Key, T, IgnoredLess, Allocator >::ordered_map ( std::initializer_list< T >  init,
const Allocator &  alloc = Allocator() 
)
inline

Definition at line 16499 of file json.h.

Member Function Documentation

◆ at() [1/2]

template<class Key , class T , class IgnoredLess = std::less<Key>, class Allocator = std::allocator<std::pair<const Key, T>>>
T& nlohmann::ordered_map< Key, T, IgnoredLess, Allocator >::at ( const Key &  key)
inline

Definition at line 16525 of file json.h.

References JSON_THROW.

Referenced by nlohmann::ordered_map< Key, T, IgnoredLess, Allocator >::operator[]().

+ Here is the caller graph for this function:

◆ at() [2/2]

template<class Key , class T , class IgnoredLess = std::less<Key>, class Allocator = std::allocator<std::pair<const Key, T>>>
const T& nlohmann::ordered_map< Key, T, IgnoredLess, Allocator >::at ( const Key &  key) const
inline

Definition at line 16538 of file json.h.

References JSON_THROW.

◆ count()

template<class Key , class T , class IgnoredLess = std::less<Key>, class Allocator = std::allocator<std::pair<const Key, T>>>
size_type nlohmann::ordered_map< Key, T, IgnoredLess, Allocator >::count ( const Key &  key) const
inline

Definition at line 16584 of file json.h.

◆ emplace()

template<class Key , class T , class IgnoredLess = std::less<Key>, class Allocator = std::allocator<std::pair<const Key, T>>>
std::pair<iterator, bool> nlohmann::ordered_map< Key, T, IgnoredLess, Allocator >::emplace ( const key_type key,
T &&  t 
)
inline

Definition at line 16502 of file json.h.

Referenced by nlohmann::ordered_map< Key, T, IgnoredLess, Allocator >::insert(), and nlohmann::ordered_map< Key, T, IgnoredLess, Allocator >::operator[]().

+ Here is the caller graph for this function:

◆ erase() [1/2]

template<class Key , class T , class IgnoredLess = std::less<Key>, class Allocator = std::allocator<std::pair<const Key, T>>>
size_type nlohmann::ordered_map< Key, T, IgnoredLess, Allocator >::erase ( const Key &  key)
inline

Definition at line 16551 of file json.h.

◆ erase() [2/2]

template<class Key , class T , class IgnoredLess = std::less<Key>, class Allocator = std::allocator<std::pair<const Key, T>>>
iterator nlohmann::ordered_map< Key, T, IgnoredLess, Allocator >::erase ( iterator  pos)
inline

Definition at line 16570 of file json.h.

◆ find() [1/2]

template<class Key , class T , class IgnoredLess = std::less<Key>, class Allocator = std::allocator<std::pair<const Key, T>>>
iterator nlohmann::ordered_map< Key, T, IgnoredLess, Allocator >::find ( const Key &  key)
inline

Definition at line 16596 of file json.h.

◆ find() [2/2]

template<class Key , class T , class IgnoredLess = std::less<Key>, class Allocator = std::allocator<std::pair<const Key, T>>>
const_iterator nlohmann::ordered_map< Key, T, IgnoredLess, Allocator >::find ( const Key &  key) const
inline

Definition at line 16608 of file json.h.

◆ insert() [1/2]

template<class Key , class T , class IgnoredLess = std::less<Key>, class Allocator = std::allocator<std::pair<const Key, T>>>
std::pair<iterator, bool> nlohmann::ordered_map< Key, T, IgnoredLess, Allocator >::insert ( const value_type &  value)
inline

Definition at line 16625 of file json.h.

◆ insert() [2/2]

template<class Key , class T , class IgnoredLess = std::less<Key>, class Allocator = std::allocator<std::pair<const Key, T>>>
std::pair<iterator, bool> nlohmann::ordered_map< Key, T, IgnoredLess, Allocator >::insert ( value_type &&  value)
inline

Definition at line 16620 of file json.h.

References nlohmann::ordered_map< Key, T, IgnoredLess, Allocator >::emplace().

+ Here is the call graph for this function:

◆ operator[]() [1/2]

template<class Key , class T , class IgnoredLess = std::less<Key>, class Allocator = std::allocator<std::pair<const Key, T>>>
T& nlohmann::ordered_map< Key, T, IgnoredLess, Allocator >::operator[] ( const Key &  key)
inline

Definition at line 16515 of file json.h.

References nlohmann::ordered_map< Key, T, IgnoredLess, Allocator >::emplace().

+ Here is the call graph for this function:

◆ operator[]() [2/2]

template<class Key , class T , class IgnoredLess = std::less<Key>, class Allocator = std::allocator<std::pair<const Key, T>>>
const T& nlohmann::ordered_map< Key, T, IgnoredLess, Allocator >::operator[] ( const Key &  key) const
inline

Definition at line 16520 of file json.h.

References nlohmann::ordered_map< Key, T, IgnoredLess, Allocator >::at().

+ Here is the call graph for this function:

The documentation for this struct was generated from the following file: