LLVM API Documentation
#include <ImmutableMap.h>
Classes | |
class | iterator |
Public Types | |
typedef ValInfo::value_type | value_type |
typedef ValInfo::value_type_ref | value_type_ref |
typedef ValInfo::key_type | key_type |
typedef ValInfo::key_type_ref | key_type_ref |
typedef ValInfo::data_type | data_type |
typedef ValInfo::data_type_ref | data_type_ref |
typedef ImutAVLTree< ValInfo > | TreeTy |
typedef TreeTy::Factory | FactoryTy |
Public Member Functions | |
ImmutableMapRef (const TreeTy *R, FactoryTy *F) | |
ImmutableMapRef (const ImmutableMap< KeyT, ValT > &X, typename ImmutableMap< KeyT, ValT >::Factory &F) | |
ImmutableMapRef (const ImmutableMapRef &X) | |
ImmutableMapRef & | operator= (const ImmutableMapRef &X) |
~ImmutableMapRef () | |
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 |
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 | |
TreeTy * | Root |
FactoryTy * | Factory |
Definition at line 272 of file ImmutableMap.h.
typedef ValInfo::data_type llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::data_type |
Definition at line 278 of file ImmutableMap.h.
typedef ValInfo::data_type_ref llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::data_type_ref |
Definition at line 279 of file ImmutableMap.h.
typedef TreeTy::Factory llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::FactoryTy |
Definition at line 281 of file ImmutableMap.h.
typedef ValInfo::key_type llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::key_type |
Definition at line 276 of file ImmutableMap.h.
typedef ValInfo::key_type_ref llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::key_type_ref |
Definition at line 277 of file ImmutableMap.h.
typedef ImutAVLTree<ValInfo> llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::TreeTy |
Definition at line 280 of file ImmutableMap.h.
typedef ValInfo::value_type llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::value_type |
Definition at line 274 of file ImmutableMap.h.
typedef ValInfo::value_type_ref llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::value_type_ref |
Definition at line 275 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 292 of file ImmutableMap.h.
References llvm::ImutAVLTree< ImutInfo >::retain(), and llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::Root.
Referenced by llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::add(), llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::getEmptyMap(), and llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::remove().
|
inlineexplicit |
Definition at line 298 of file ImmutableMap.h.
References llvm::ImutAVLTree< ImutInfo >::retain(), and llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::Root.
|
inline |
Definition at line 305 of file ImmutableMap.h.
References llvm::ImutAVLTree< ImutInfo >::retain(), and llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::Root.
|
inline |
Definition at line 325 of file ImmutableMap.h.
References llvm::ImutAVLTree< ImutInfo >::release(), and llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::Root.
|
inline |
|
inline |
Definition at line 356 of file ImmutableMap.h.
References llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::Factory, llvm::ImutAVLFactory< ImutInfo >::getCanonicalTree(), and llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::Root.
|
inline |
Definition at line 403 of file ImmutableMap.h.
References llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::Root.
|
inline |
Definition at line 352 of file ImmutableMap.h.
References llvm::ImutAVLTree< ImutInfo >::contains(), and llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::Root.
|
inline |
Definition at line 404 of file ImmutableMap.h.
|
inlinestatic |
Definition at line 330 of file ImmutableMap.h.
References llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::ImmutableMapRef().
|
inline |
Definition at line 426 of file ImmutableMap.h.
References llvm::ImutAVLTree< ImutInfo >::getHeight(), and llvm::ImmutableMapRef< 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 418 of file ImmutableMap.h.
References llvm::ImutAVLTree< ImutInfo >::getMaxElement(), llvm::ImutAVLTree< ImutInfo >::getValue(), and llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::Root.
|
inline |
Definition at line 368 of file ImmutableMap.h.
References llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::Root.
|
inline |
Definition at line 406 of file ImmutableMap.h.
References llvm::ImutAVLTree< ImutInfo >::find(), llvm::ImutAVLTree< ImutInfo >::getValue(), and llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::Root.
|
inline |
Definition at line 338 of file ImmutableMap.h.
References llvm::ImutAVLTree< ImutInfo >::release(), and llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::Root.
|
inline |
Definition at line 334 of file ImmutableMap.h.
References llvm::ImutAVLTree< ImutInfo >::retain(), and llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::Root.
|
inline |
Definition at line 364 of file ImmutableMap.h.
References llvm::ImutAVLTree< ImutInfo >::isNotEqual(), and llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::Root.
|
inline |
Definition at line 311 of file ImmutableMap.h.
References llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::Factory, llvm::ImutAVLTree< ImutInfo >::release(), llvm::ImutAVLTree< ImutInfo >::retain(), and llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::Root.
|
inline |
Definition at line 360 of file ImmutableMap.h.
References llvm::ImutAVLTree< ImutInfo >::isEqual(), and llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::Root.
|
inlinestatic |
Definition at line 428 of file ImmutableMap.h.
References llvm::FoldingSetNodeID::AddPointer(), and llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::Root.
Referenced by llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::Profile().
|
inline |
Definition at line 432 of file ImmutableMap.h.
References llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::Profile().
|
inline |
|
inline |
Definition at line 374 of file ImmutableMap.h.
References llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::Root.
|
protected |
|
protected |
Definition at line 284 of file ImmutableMap.h.
Referenced by llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::add(), llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::asImmutableMap(), llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::begin(), llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::contains(), llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::getHeight(), llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::getMaxElement(), llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::ImmutableMapRef(), llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::isEmpty(), llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::lookup(), llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::manualRelease(), llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::manualRetain(), llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::operator!=(), llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::operator=(), llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::operator==(), llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::Profile(), llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::remove(), llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::verify(), and llvm::ImmutableMapRef< KeyT, ValT, ValInfo >::~ImmutableMapRef().