LLVM 20.0.0git
|
#include "llvm/ADT/ImmutableMap.h"
Classes | |
class | Factory |
class | iterator |
Public Types | |
using | value_type = typename ValInfo::value_type |
using | value_type_ref = typename ValInfo::value_type_ref |
using | key_type = typename ValInfo::key_type |
using | key_type_ref = typename ValInfo::key_type_ref |
using | data_type = typename ValInfo::data_type |
using | data_type_ref = typename ValInfo::data_type_ref |
using | TreeTy = ImutAVLTree< ValInfo > |
Public Member Functions | |
ImmutableMap (const TreeTy *R) | |
Constructs a map from a pointer to a tree root. | |
bool | contains (key_type_ref K) const |
bool | operator== (const ImmutableMap &RHS) const |
bool | operator!= (const ImmutableMap &RHS) const |
TreeTy * | getRoot () const |
TreeTy * | getRootWithoutRetain () const |
void | manualRetain () |
void | manualRelease () |
bool | isEmpty () const |
void | verify () const |
iterator | begin () const |
iterator | end () const |
data_type * | lookup (key_type_ref K) const |
value_type * | getMaxElement () const |
getMaxElement - Returns the <key,value> pair in the ImmutableMap for which key is the highest in the ordering of keys in the map. | |
unsigned | getHeight () const |
void | Profile (FoldingSetNodeID &ID) const |
Static Public Member Functions | |
static void | Profile (FoldingSetNodeID &ID, const ImmutableMap &M) |
Protected Attributes | |
IntrusiveRefCntPtr< TreeTy > | Root |
Definition at line 63 of file ImmutableMap.h.
using llvm::ImmutableMap< KeyT, ValT, ValInfo >::data_type = typename ValInfo::data_type |
Definition at line 69 of file ImmutableMap.h.
using llvm::ImmutableMap< KeyT, ValT, ValInfo >::data_type_ref = typename ValInfo::data_type_ref |
Definition at line 70 of file ImmutableMap.h.
using llvm::ImmutableMap< KeyT, ValT, ValInfo >::key_type = typename ValInfo::key_type |
Definition at line 67 of file ImmutableMap.h.
using llvm::ImmutableMap< KeyT, ValT, ValInfo >::key_type_ref = typename ValInfo::key_type_ref |
Definition at line 68 of file ImmutableMap.h.
using llvm::ImmutableMap< KeyT, ValT, ValInfo >::TreeTy = ImutAVLTree<ValInfo> |
Definition at line 71 of file ImmutableMap.h.
using llvm::ImmutableMap< KeyT, ValT, ValInfo >::value_type = typename ValInfo::value_type |
Definition at line 65 of file ImmutableMap.h.
using llvm::ImmutableMap< KeyT, ValT, ValInfo >::value_type_ref = typename ValInfo::value_type_ref |
Definition at line 66 of file ImmutableMap.h.
|
inlineexplicit |
Constructs a map from a pointer to a tree root.
In general one should use a Factory object to create maps instead of directly invoking the constructor, but there are cases where make this constructor public is useful.
Definition at line 81 of file ImmutableMap.h.
|
inline |
Definition at line 166 of file ImmutableMap.h.
References llvm::ImmutableMap< KeyT, ValT, ValInfo >::Root.
|
inline |
Definition at line 114 of file ImmutableMap.h.
References llvm::ImmutableMap< KeyT, ValT, ValInfo >::Root.
|
inline |
Definition at line 167 of file ImmutableMap.h.
|
inline |
Definition at line 189 of file ImmutableMap.h.
References llvm::ImmutableMap< KeyT, ValT, ValInfo >::Root.
|
inline |
getMaxElement - Returns the <key,value> pair in the ImmutableMap for which key is the highest in the ordering of keys in the map.
This method returns NULL if the map is empty.
Definition at line 181 of file ImmutableMap.h.
References llvm::ImmutableMap< KeyT, ValT, ValInfo >::Root.
|
inline |
Definition at line 127 of file ImmutableMap.h.
References llvm::ImmutableMap< KeyT, ValT, ValInfo >::Root.
|
inline |
Definition at line 132 of file ImmutableMap.h.
References llvm::ImmutableMap< KeyT, ValT, ValInfo >::Root.
|
inline |
Definition at line 142 of file ImmutableMap.h.
References llvm::ImmutableMap< KeyT, ValT, ValInfo >::Root.
|
inline |
Definition at line 169 of file ImmutableMap.h.
References llvm::ImmutableMap< KeyT, ValT, ValInfo >::Root.
|
inline |
Definition at line 138 of file ImmutableMap.h.
References llvm::ImmutableMap< KeyT, ValT, ValInfo >::Root.
|
inline |
Definition at line 134 of file ImmutableMap.h.
References llvm::ImmutableMap< KeyT, ValT, ValInfo >::Root.
|
inline |
Definition at line 122 of file ImmutableMap.h.
References RHS, and llvm::ImmutableMap< KeyT, ValT, ValInfo >::Root.
|
inline |
Definition at line 118 of file ImmutableMap.h.
References RHS, and llvm::ImmutableMap< KeyT, ValT, ValInfo >::Root.
|
inline |
Definition at line 195 of file ImmutableMap.h.
References Profile.
|
inlinestatic |
Definition at line 191 of file ImmutableMap.h.
|
inline |
Definition at line 149 of file ImmutableMap.h.
References llvm::ImmutableMap< KeyT, ValT, ValInfo >::Root.
|
protected |
Definition at line 74 of file ImmutableMap.h.
Referenced by llvm::ImmutableMap< KeyT, ValT, ValInfo >::Factory::add(), llvm::ImmutableMap< KeyT, ValT, ValInfo >::begin(), llvm::ImmutableMap< KeyT, ValT, ValInfo >::contains(), llvm::ImmutableMap< KeyT, ValT, ValInfo >::getHeight(), llvm::ImmutableMap< KeyT, ValT, ValInfo >::getMaxElement(), llvm::ImmutableMap< KeyT, ValT, ValInfo >::getRoot(), llvm::ImmutableMap< KeyT, ValT, ValInfo >::getRootWithoutRetain(), llvm::ImmutableMap< KeyT, ValT, ValInfo >::isEmpty(), llvm::ImmutableMap< KeyT, ValT, ValInfo >::lookup(), llvm::ImmutableMap< KeyT, ValT, ValInfo >::manualRelease(), llvm::ImmutableMap< KeyT, ValT, ValInfo >::manualRetain(), llvm::ImmutableMap< KeyT, ValT, ValInfo >::operator!=(), llvm::ImmutableMap< KeyT, ValT, ValInfo >::operator==(), llvm::ImmutableMap< KeyT, ValT, ValInfo >::Factory::remove(), and llvm::ImmutableMap< KeyT, ValT, ValInfo >::verify().