LLVM: llvm::TGVarScope Class Reference (original) (raw)

#include "[TableGen/TGParser.h](TGParser%5F8h%5Fsource.html)"

Public Types
enum ScopeKind { SK_Local, SK_Record, SK_ForeachLoop, SK_MultiClass }
Public Member Functions
TGVarScope (std::unique_ptr< TGVarScope > Parent)
TGVarScope (std::unique_ptr< TGVarScope > Parent, Record *Rec)
TGVarScope (std::unique_ptr< TGVarScope > Parent, ForeachLoop *Loop)
TGVarScope (std::unique_ptr< TGVarScope > Parent, MultiClass *Multiclass)
std::unique_ptr< TGVarScope > extractParent ()
const Init * getVar (RecordKeeper &Records, MultiClass *ParsingMultiClass, const StringInit *Name, SMRange NameLoc, bool TrackReferenceLocs) const
bool varAlreadyDefined (StringRef Name) const
void addVar (StringRef Name, const Init *I)
bool isOutermost () const

Definition at line 89 of file TGParser.h.

ScopeKind

Enumerator
SK_Local
SK_Record
SK_ForeachLoop
SK_MultiClass

Definition at line 91 of file TGParser.h.

llvm::TGVarScope::TGVarScope ( std::unique_ptr< TGVarScope > Parent) inline

TGVarScope() [2/4]

llvm::TGVarScope::TGVarScope ( std::unique_ptr< TGVarScope > Parent, Record * Rec ) inline

TGVarScope() [3/4]

TGVarScope() [4/4]

addVar()

extractParent()

std::unique_ptr< TGVarScope > llvm::TGVarScope::extractParent ( ) inline

getVar()

Definition at line 145 of file TGParser.cpp.

References llvm::RecordVal::addReferenceLoc(), assert(), llvm::dyn_cast(), llvm::StringRecTy::get(), llvm::VarInit::get(), llvm::RecordVal::getType(), llvm::Record::getValue(), llvm::RecordVal::getValue(), llvm::Record::isTemplateArg(), QualifyName(), llvm::RecordVal::setUsed(), SK_ForeachLoop, SK_Local, SK_MultiClass, and SK_Record.

isOutermost()

bool llvm::TGVarScope::isOutermost ( ) const inline

varAlreadyDefined()

bool llvm::TGVarScope::varAlreadyDefined ( StringRef Name) const inline

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