klee
klee::ImmutableMap< K, D, CMP > Class Template Reference

#include <ImmutableMap.h>

Inheritance diagram for klee::ImmutableMap< K, D, CMP >:
Collaboration diagram for klee::ImmutableMap< K, D, CMP >:

Public Types

typedef K key_type
 
typedef std::pair< K, D > value_type
 
typedef ImmutableTree< K, value_type, _Select1st< value_type, key_type >, CMP > Tree
 
typedef Tree::iterator iterator
 

Public Member Functions

 ImmutableMap ()
 
 ImmutableMap (const ImmutableMap &b)
 
 ~ImmutableMap ()
 
ImmutableMapoperator= (const ImmutableMap &b)
 
bool empty () const
 
size_t count (const key_type &key) const
 
const value_typelookup (const key_type &key) const
 
const value_typelookup_previous (const key_type &key) const
 
const value_typemin () const
 
const value_typemax () const
 
size_t size () const
 
ImmutableMap insert (const value_type &value) const
 
ImmutableMap replace (const value_type &value) const
 
ImmutableMap remove (const key_type &key) const
 
ImmutableMap popMin (const value_type &valueOut) const
 
ImmutableMap popMax (const value_type &valueOut) const
 
iterator begin () const
 
iterator end () const
 
iterator find (const key_type &key) const
 
iterator lower_bound (const key_type &key) const
 
iterator upper_bound (const key_type &key) const
 

Static Public Member Functions

static size_t getAllocated ()
 

Private Member Functions

 ImmutableMap (const Tree &b)
 

Private Attributes

Tree elts
 

Detailed Description

template<class K, class D, class CMP = std::less<K>>
class klee::ImmutableMap< K, D, CMP >

Definition at line 25 of file ImmutableMap.h.

Member Typedef Documentation

◆ iterator

template<class K , class D , class CMP = std::less<K>>
typedef Tree::iterator klee::ImmutableMap< K, D, CMP >::iterator

Definition at line 31 of file ImmutableMap.h.

◆ key_type

template<class K , class D , class CMP = std::less<K>>
typedef K klee::ImmutableMap< K, D, CMP >::key_type

Definition at line 27 of file ImmutableMap.h.

◆ Tree

template<class K , class D , class CMP = std::less<K>>
typedef ImmutableTree<K, value_type, _Select1st<value_type,key_type>, CMP> klee::ImmutableMap< K, D, CMP >::Tree

Definition at line 30 of file ImmutableMap.h.

◆ value_type

template<class K , class D , class CMP = std::less<K>>
typedef std::pair<K,D> klee::ImmutableMap< K, D, CMP >::value_type

Definition at line 28 of file ImmutableMap.h.

Constructor & Destructor Documentation

◆ ImmutableMap() [1/3]

template<class K , class D , class CMP = std::less<K>>
klee::ImmutableMap< K, D, CMP >::ImmutableMap ( const Tree b)
inlineprivate

Definition at line 36 of file ImmutableMap.h.

◆ ImmutableMap() [2/3]

template<class K , class D , class CMP = std::less<K>>
klee::ImmutableMap< K, D, CMP >::ImmutableMap ( )
inline

Definition at line 39 of file ImmutableMap.h.

◆ ImmutableMap() [3/3]

template<class K , class D , class CMP = std::less<K>>
klee::ImmutableMap< K, D, CMP >::ImmutableMap ( const ImmutableMap< K, D, CMP > &  b)
inline

Definition at line 40 of file ImmutableMap.h.

◆ ~ImmutableMap()

template<class K , class D , class CMP = std::less<K>>
klee::ImmutableMap< K, D, CMP >::~ImmutableMap ( )
inline

Definition at line 41 of file ImmutableMap.h.

Member Function Documentation

◆ begin()

template<class K , class D , class CMP = std::less<K>>
iterator klee::ImmutableMap< K, D, CMP >::begin ( ) const
inline

◆ count()

template<class K , class D , class CMP = std::less<K>>
size_t klee::ImmutableMap< K, D, CMP >::count ( const key_type key) const
inline

Definition at line 48 of file ImmutableMap.h.

References klee::ImmutableTree< K, V, KOV, CMP >::count(), and klee::ImmutableMap< K, D, CMP >::elts.

Here is the call graph for this function:

◆ empty()

template<class K , class D , class CMP = std::less<K>>
bool klee::ImmutableMap< K, D, CMP >::empty ( ) const
inline

Definition at line 45 of file ImmutableMap.h.

References klee::ImmutableMap< K, D, CMP >::elts, and klee::ImmutableTree< K, V, KOV, CMP >::empty().

Here is the call graph for this function:

◆ end()

template<class K , class D , class CMP = std::less<K>>
iterator klee::ImmutableMap< K, D, CMP >::end ( ) const
inline

◆ find()

template<class K , class D , class CMP = std::less<K>>
iterator klee::ImmutableMap< K, D, CMP >::find ( const key_type key) const
inline

Definition at line 89 of file ImmutableMap.h.

References klee::ImmutableMap< K, D, CMP >::elts, and klee::ImmutableTree< K, V, KOV, CMP >::find().

Here is the call graph for this function:

◆ getAllocated()

template<class K , class D , class CMP = std::less<K>>
static size_t klee::ImmutableMap< K, D, CMP >::getAllocated ( )
inlinestatic

Definition at line 99 of file ImmutableMap.h.

References klee::ImmutableTree< K, V, KOV, CMP >::allocated.

◆ insert()

template<class K , class D , class CMP = std::less<K>>
ImmutableMap klee::ImmutableMap< K, D, CMP >::insert ( const value_type value) const
inline

Definition at line 67 of file ImmutableMap.h.

References klee::ImmutableMap< K, D, CMP >::elts, and klee::ImmutableTree< K, V, KOV, CMP >::insert().

Here is the call graph for this function:

◆ lookup()

template<class K , class D , class CMP = std::less<K>>
const value_type * klee::ImmutableMap< K, D, CMP >::lookup ( const key_type key) const
inline

Definition at line 51 of file ImmutableMap.h.

References klee::ImmutableMap< K, D, CMP >::elts, and klee::ImmutableTree< K, V, KOV, CMP >::lookup().

Referenced by klee::AddressSpace::findObject().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ lookup_previous()

template<class K , class D , class CMP = std::less<K>>
const value_type * klee::ImmutableMap< K, D, CMP >::lookup_previous ( const key_type key) const
inline

Definition at line 54 of file ImmutableMap.h.

References klee::ImmutableMap< K, D, CMP >::elts, and klee::ImmutableTree< K, V, KOV, CMP >::lookup_previous().

Referenced by klee::AddressSpace::resolveOne().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ lower_bound()

template<class K , class D , class CMP = std::less<K>>
iterator klee::ImmutableMap< K, D, CMP >::lower_bound ( const key_type key) const
inline

Definition at line 92 of file ImmutableMap.h.

References klee::ImmutableMap< K, D, CMP >::elts, and klee::ImmutableTree< K, V, KOV, CMP >::lower_bound().

Here is the call graph for this function:

◆ max()

template<class K , class D , class CMP = std::less<K>>
const value_type & klee::ImmutableMap< K, D, CMP >::max ( ) const
inline

Definition at line 60 of file ImmutableMap.h.

References klee::ImmutableMap< K, D, CMP >::elts, and klee::ImmutableTree< K, V, KOV, CMP >::max().

Here is the call graph for this function:

◆ min()

template<class K , class D , class CMP = std::less<K>>
const value_type & klee::ImmutableMap< K, D, CMP >::min ( ) const
inline

Definition at line 57 of file ImmutableMap.h.

References klee::ImmutableMap< K, D, CMP >::elts, and klee::ImmutableTree< K, V, KOV, CMP >::min().

Here is the call graph for this function:

◆ operator=()

template<class K , class D , class CMP = std::less<K>>
ImmutableMap & klee::ImmutableMap< K, D, CMP >::operator= ( const ImmutableMap< K, D, CMP > &  b)
inline

Definition at line 43 of file ImmutableMap.h.

References klee::ImmutableMap< K, D, CMP >::elts.

◆ popMax()

template<class K , class D , class CMP = std::less<K>>
ImmutableMap klee::ImmutableMap< K, D, CMP >::popMax ( const value_type valueOut) const
inline

Definition at line 79 of file ImmutableMap.h.

References klee::ImmutableMap< K, D, CMP >::elts, and klee::ImmutableTree< K, V, KOV, CMP >::popMax().

Here is the call graph for this function:

◆ popMin()

template<class K , class D , class CMP = std::less<K>>
ImmutableMap klee::ImmutableMap< K, D, CMP >::popMin ( const value_type valueOut) const
inline

Definition at line 76 of file ImmutableMap.h.

References klee::ImmutableMap< K, D, CMP >::elts, and klee::ImmutableTree< K, V, KOV, CMP >::popMin().

Here is the call graph for this function:

◆ remove()

template<class K , class D , class CMP = std::less<K>>
ImmutableMap klee::ImmutableMap< K, D, CMP >::remove ( const key_type key) const
inline

Definition at line 73 of file ImmutableMap.h.

References klee::ImmutableMap< K, D, CMP >::elts, and klee::ImmutableTree< K, V, KOV, CMP >::remove().

Referenced by klee::AddressSpace::unbindObject().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ replace()

template<class K , class D , class CMP = std::less<K>>
ImmutableMap klee::ImmutableMap< K, D, CMP >::replace ( const value_type value) const
inline

Definition at line 70 of file ImmutableMap.h.

References klee::ImmutableMap< K, D, CMP >::elts, and klee::ImmutableTree< K, V, KOV, CMP >::replace().

Referenced by klee::AddressSpace::bindObject(), and klee::AddressSpace::getWriteable().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ size()

template<class K , class D , class CMP = std::less<K>>
size_t klee::ImmutableMap< K, D, CMP >::size ( ) const
inline

Definition at line 63 of file ImmutableMap.h.

References klee::ImmutableMap< K, D, CMP >::elts, and klee::ImmutableTree< K, V, KOV, CMP >::size().

Here is the call graph for this function:

◆ upper_bound()

template<class K , class D , class CMP = std::less<K>>
iterator klee::ImmutableMap< K, D, CMP >::upper_bound ( const key_type key) const
inline

Definition at line 95 of file ImmutableMap.h.

References klee::ImmutableMap< K, D, CMP >::elts, and klee::ImmutableTree< K, V, KOV, CMP >::upper_bound().

Referenced by klee::Executor::getAddressInfo(), klee::AddressSpace::resolve(), and klee::AddressSpace::resolveOne().

Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ elts


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