CIRCT
19.0.0git
|
This is a stack of hashtables, if lookup fails in the top-most hashtable, it will attempt to lookup in lower hashtables. More...
Classes | |
struct | Iterator |
Public Types | |
using | ScopeT = typename llvm::MapVector< KeyT, ValueT > |
using | StackT = typename llvm::SmallVector< ScopeT, 3 > |
using | iterator = Iterator |
Public Member Functions | |
HashTableStack () | |
iterator | begin () |
iterator | end () |
iterator | find (const KeyT &key) |
ScopeT & | getLastScope () |
void | pushScope () |
ScopeT | popScope () |
ValueT & | operator[] (const KeyT &key) |
Private Attributes | |
StackT | mapStack |
This is a stack of hashtables, if lookup fails in the top-most hashtable, it will attempt to lookup in lower hashtables.
This class is used instead of a ScopedHashTable so we can manually pop off a scope and keep it around.
This only allows inserting into the outermost scope.
Definition at line 39 of file ExpandWhens.cpp.
using HashTableStack< KeyT, ValueT >::iterator = Iterator |
Definition at line 73 of file ExpandWhens.cpp.
using HashTableStack< KeyT, ValueT >::ScopeT = typename llvm::MapVector<KeyT, ValueT> |
Definition at line 40 of file ExpandWhens.cpp.
using HashTableStack< KeyT, ValueT >::StackT = typename llvm::SmallVector<ScopeT, 3> |
Definition at line 41 of file ExpandWhens.cpp.
|
inline |
Definition at line 68 of file ExpandWhens.cpp.
|
inline |
Definition at line 75 of file ExpandWhens.cpp.
|
inline |
Definition at line 79 of file ExpandWhens.cpp.
|
inline |
Definition at line 81 of file ExpandWhens.cpp.
|
inline |
Definition at line 92 of file ExpandWhens.cpp.
|
inline |
Definition at line 102 of file ExpandWhens.cpp.
|
inline |
Definition at line 96 of file ExpandWhens.cpp.
References assert().
|
inline |
Definition at line 94 of file ExpandWhens.cpp.
|
private |
Definition at line 105 of file ExpandWhens.cpp.