CIRCT
20.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 46 of file ExpandWhens.cpp.
using HashTableStack< KeyT, ValueT >::iterator = Iterator |
Definition at line 80 of file ExpandWhens.cpp.
using HashTableStack< KeyT, ValueT >::ScopeT = typename llvm::MapVector<KeyT, ValueT> |
Definition at line 47 of file ExpandWhens.cpp.
using HashTableStack< KeyT, ValueT >::StackT = typename llvm::SmallVector<ScopeT, 3> |
Definition at line 48 of file ExpandWhens.cpp.
|
inline |
Definition at line 75 of file ExpandWhens.cpp.
|
inline |
Definition at line 82 of file ExpandWhens.cpp.
|
inline |
Definition at line 86 of file ExpandWhens.cpp.
|
inline |
Definition at line 88 of file ExpandWhens.cpp.
|
inline |
Definition at line 99 of file ExpandWhens.cpp.
|
inline |
Definition at line 109 of file ExpandWhens.cpp.
|
inline |
Definition at line 103 of file ExpandWhens.cpp.
References assert().
|
inline |
Definition at line 101 of file ExpandWhens.cpp.
|
private |
Definition at line 112 of file ExpandWhens.cpp.