LLVM 22.0.0git
|
#include "llvm/ADT/ImmutableMap.h"
Classes | |
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> |
using | FactoryTy = typename TreeTy::Factory |
Public Member Functions | |
ImmutableMapRef (const TreeTy *R, FactoryTy *F) | |
Constructs a map from a pointer to a tree root. | |
ImmutableMapRef (const ImmutableMap< KeyT, ValT > &X, typename ImmutableMap< KeyT, ValT >::Factory &F) | |
void | manualRetain () |
void | manualRelease () |
ImmutableMapRef | add (key_type_ref K, data_type_ref D) const |
ImmutableMapRef | remove (key_type_ref K) const |
bool | contains (key_type_ref K) const |
ImmutableMap< KeyT, ValT > | asImmutableMap () const |
bool | operator== (const ImmutableMapRef &RHS) const |
bool | operator!= (const ImmutableMapRef &RHS) const |
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 ImmutableMapRef | getEmptyMap (FactoryTy *F) |
static void | Profile (FoldingSetNodeID &ID, const ImmutableMapRef &M) |
Protected Attributes | |
IntrusiveRefCntPtr< TreeTy > | Root |
FactoryTy * | Factory |
Definition at line 205 of file ImmutableMap.h.
using llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::data_type = typename ValInfo::data_type |
Definition at line 211 of file ImmutableMap.h.
using llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::data_type_ref = typename ValInfo::data_type_ref |
Definition at line 212 of file ImmutableMap.h.
using llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::FactoryTy = typename TreeTy::Factory |
Definition at line 214 of file ImmutableMap.h.
using llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::key_type = typename ValInfo::key_type |
Definition at line 209 of file ImmutableMap.h.
using llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::key_type_ref = typename ValInfo::key_type_ref |
Definition at line 210 of file ImmutableMap.h.
using llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::TreeTy = ImutAVLTree<ValInfo> |
Definition at line 213 of file ImmutableMap.h.
using llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::value_type = typename ValInfo::value_type |
Definition at line 207 of file ImmutableMap.h.
using llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::value_type_ref = typename ValInfo::value_type_ref |
Definition at line 208 of file ImmutableMap.h.
|
inline |
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 225 of file ImmutableMap.h.
References F, Factory, and Root.
Referenced by add(), getEmptyMap(), operator!=(), operator==(), Profile(), and remove().
|
inline |
|
inline |
Definition at line 244 of file ImmutableMap.h.
References D(), Factory, ImmutableMapRef(), and Root.
|
inline |
Definition at line 259 of file ImmutableMap.h.
|
inlinenodiscard |
Definition at line 298 of file ImmutableMap.h.
References Root.
|
inlinenodiscard |
Definition at line 255 of file ImmutableMap.h.
References Root.
|
inlinenodiscard |
Definition at line 299 of file ImmutableMap.h.
|
inlinestatic |
Definition at line 232 of file ImmutableMap.h.
References F, and ImmutableMapRef().
|
inlinenodiscard |
Definition at line 321 of file ImmutableMap.h.
References Root.
|
inlinenodiscard |
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 313 of file ImmutableMap.h.
References Root.
|
inlinenodiscard |
Definition at line 272 of file ImmutableMap.h.
References Root.
|
inlinenodiscard |
Definition at line 301 of file ImmutableMap.h.
|
inline |
Definition at line 240 of file ImmutableMap.h.
References Root.
|
inline |
Definition at line 236 of file ImmutableMap.h.
References Root.
|
inlinenodiscard |
Definition at line 267 of file ImmutableMap.h.
References ImmutableMapRef(), RHS, and Root.
|
inlinenodiscard |
Definition at line 263 of file ImmutableMap.h.
References ImmutableMapRef(), RHS, and Root.
|
inline |
|
inlinestatic |
Definition at line 325 of file ImmutableMap.h.
References ImmutableMapRef().
|
inline |
Definition at line 250 of file ImmutableMap.h.
References Factory, ImmutableMapRef(), and Root.
|
inline |
Definition at line 278 of file ImmutableMap.h.
References Root.
|
protected |
Definition at line 218 of file ImmutableMap.h.
Referenced by add(), asImmutableMap(), ImmutableMapRef(), ImmutableMapRef(), and remove().
|
protected |
Definition at line 217 of file ImmutableMap.h.
Referenced by add(), asImmutableMap(), begin(), contains(), getHeight(), getMaxElement(), ImmutableMapRef(), ImmutableMapRef(), isEmpty(), lookup(), manualRelease(), manualRetain(), operator!=(), operator==(), remove(), and verify().