LLVM 23.0.0git
llvm::ScopedHashTableScope< K, V, KInfo, AllocatorTy > Class Template Reference

#include "llvm/ADT/ScopedHashTable.h"

Inheritance diagram for llvm::ScopedHashTableScope< K, V, KInfo, AllocatorTy >:
[legend]

Public Member Functions

 ScopedHashTableScope (ScopedHashTable< K, V, KInfo, AllocatorTy > &HT)
 ScopedHashTableScope (ScopedHashTableScope &)=delete
ScopedHashTableScopeoperator= (ScopedHashTableScope &)=delete
 ~ScopedHashTableScope ()
ScopedHashTableScopegetParentScope ()
const ScopedHashTableScopegetParentScope () const
void erase (const K &key)
 This method undoes the latest binding of the given key, effectively reverting to the previous state for that key.

Friends

class ScopedHashTable< K, V, KInfo, AllocatorTy >

Detailed Description

template<typename K, typename V, typename KInfo = DenseMapInfo<K>, typename AllocatorTy = MallocAllocator>
class llvm::ScopedHashTableScope< K, V, KInfo, AllocatorTy >

Definition at line 104 of file ScopedHashTable.h.

Constructor & Destructor Documentation

◆ ScopedHashTableScope() [1/2]

template<typename K, typename V, typename KInfo = DenseMapInfo<K>, typename AllocatorTy = MallocAllocator>
llvm::ScopedHashTableScope< K, V, KInfo, AllocatorTy >::ScopedHashTableScope ( ScopedHashTable< K, V, KInfo, AllocatorTy > & HT)

◆ ScopedHashTableScope() [2/2]

template<typename K, typename V, typename KInfo = DenseMapInfo<K>, typename AllocatorTy = MallocAllocator>
llvm::ScopedHashTableScope< K, V, KInfo, AllocatorTy >::ScopedHashTableScope ( ScopedHashTableScope< K, V, KInfo, AllocatorTy > & )
delete

◆ ~ScopedHashTableScope()

template<typename K, typename V, typename KInfo, typename Allocator>
llvm::ScopedHashTableScope< K, V, KInfo, Allocator >::~ScopedHashTableScope ( )

Member Function Documentation

◆ erase()

template<typename K, typename V, typename KInfo, typename Allocator>
void llvm::ScopedHashTableScope< K, V, KInfo, Allocator >::erase ( const K & Key)

This method undoes the latest binding of the given key, effectively reverting to the previous state for that key.

In the example at the beginning of this file, if we execute HT.erase(0) immediately after HT.insert(0, 42);, then the value associated with key "0" reverts to 0. This value is owned by "Scope1(HT)".

Definition at line 288 of file ScopedHashTable.h.

References llvm::ScopedHashTableVal< K, V >::erase(), llvm::ScopedHashTableVal< K, V >::getNextForKey(), llvm::ScopedHashTableVal< K, V >::getNextInScope(), and llvm::InnerAnalysisManagerProxy< AnalysisManagerT, IRUnitT, ExtraArgTs... >::Key.

◆ getParentScope() [1/2]

template<typename K, typename V, typename KInfo = DenseMapInfo<K>, typename AllocatorTy = MallocAllocator>
ScopedHashTableScope * llvm::ScopedHashTableScope< K, V, KInfo, AllocatorTy >::getParentScope ( )
inline

Definition at line 121 of file ScopedHashTable.h.

◆ getParentScope() [2/2]

template<typename K, typename V, typename KInfo = DenseMapInfo<K>, typename AllocatorTy = MallocAllocator>
const ScopedHashTableScope * llvm::ScopedHashTableScope< K, V, KInfo, AllocatorTy >::getParentScope ( ) const
inline

Definition at line 122 of file ScopedHashTable.h.

◆ operator=()

template<typename K, typename V, typename KInfo = DenseMapInfo<K>, typename AllocatorTy = MallocAllocator>
ScopedHashTableScope & llvm::ScopedHashTableScope< K, V, KInfo, AllocatorTy >::operator= ( ScopedHashTableScope< K, V, KInfo, AllocatorTy > & )
delete

◆ ScopedHashTable< K, V, KInfo, AllocatorTy >

template<typename K, typename V, typename KInfo = DenseMapInfo<K>, typename AllocatorTy = MallocAllocator>
friend class ScopedHashTable< K, V, KInfo, AllocatorTy >
friend

Definition at line 123 of file ScopedHashTable.h.


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