class Preprocessor::MacroState
Declaration
class Preprocessor::MacroState { /* full declaration omitted */ };
Description
The state of a macro for an identifier.
Declared at: clang/include/clang/Lex/Preprocessor.h:693
Member Variables
- private llvm::PointerUnion<MacroDirective*, ModuleMacroInfo*> State
Method Overview
- public MacroState()
- public MacroState(clang::MacroDirective * MD)
- public MacroState(clang::Preprocessor::MacroState && O) noexcept
- public MacroDirective::DefInfo findDirectiveAtLoc(clang::SourceLocation Loc, clang::SourceManager & SourceMgr) const
- public ArrayRef<clang::ModuleMacro *> getActiveModuleMacros(clang::Preprocessor & PP, const clang::IdentifierInfo * II) const
- public clang::MacroDirective * getLatest() const
- private clang::Preprocessor::ModuleMacroInfo * getModuleInfo(clang::Preprocessor & PP, const clang::IdentifierInfo * II) const
- public ArrayRef<clang::ModuleMacro *> getOverriddenMacros() const
- public bool isAmbiguous(clang::Preprocessor & PP, const clang::IdentifierInfo * II) const
- public void overrideActiveModuleMacros(clang::Preprocessor & PP, clang::IdentifierInfo * II)
- public void setLatest(clang::MacroDirective * MD)
- public void setOverriddenMacros(clang::Preprocessor & PP, ArrayRef<clang::ModuleMacro *> Overrides)
- public ~MacroState()
Methods
¶MacroState()
MacroState()
Declared at: clang/include/clang/Lex/Preprocessor.h:722
¶MacroState(clang::MacroDirective* MD)
MacroState(clang::MacroDirective* MD)
Declared at: clang/include/clang/Lex/Preprocessor.h:723
Parameters
¶MacroState(
clang::Preprocessor::MacroState&& O) noexcept
MacroState(
clang::Preprocessor::MacroState&& O) noexcept
Declared at: clang/include/clang/Lex/Preprocessor.h:725
Parameters
¶MacroDirective::DefInfo findDirectiveAtLoc(
clang::SourceLocation Loc,
clang::SourceManager& SourceMgr) const
MacroDirective::DefInfo findDirectiveAtLoc(
clang::SourceLocation Loc,
clang::SourceManager& SourceMgr) const
Declared at: clang/include/clang/Lex/Preprocessor.h:766
Parameters
- clang::SourceLocation Loc
- clang::SourceManager& SourceMgr
¶ArrayRef<clang::ModuleMacro*>
getActiveModuleMacros(
clang::Preprocessor& PP,
const clang::IdentifierInfo* II) const
ArrayRef<clang::ModuleMacro*>
getActiveModuleMacros(
clang::Preprocessor& PP,
const clang::IdentifierInfo* II) const
Declared at: clang/include/clang/Lex/Preprocessor.h:760
Parameters
- clang::Preprocessor& PP
- const clang::IdentifierInfo* II
¶clang::MacroDirective* getLatest() const
clang::MacroDirective* getLatest() const
Declared at: clang/include/clang/Lex/Preprocessor.h:741
¶clang::Preprocessor::ModuleMacroInfo*
getModuleInfo(
clang::Preprocessor& PP,
const clang::IdentifierInfo* II) const
clang::Preprocessor::ModuleMacroInfo*
getModuleInfo(
clang::Preprocessor& PP,
const clang::IdentifierInfo* II) const
Declared at: clang/include/clang/Lex/Preprocessor.h:696
Parameters
- clang::Preprocessor& PP
- const clang::IdentifierInfo* II
¶ArrayRef<clang::ModuleMacro*>
getOverriddenMacros() const
ArrayRef<clang::ModuleMacro*>
getOverriddenMacros() const
Declared at: clang/include/clang/Lex/Preprocessor.h:784
¶bool isAmbiguous(
clang::Preprocessor& PP,
const clang::IdentifierInfo* II) const
bool isAmbiguous(
clang::Preprocessor& PP,
const clang::IdentifierInfo* II) const
Declared at: clang/include/clang/Lex/Preprocessor.h:754
Parameters
- clang::Preprocessor& PP
- const clang::IdentifierInfo* II
¶void overrideActiveModuleMacros(
clang::Preprocessor& PP,
clang::IdentifierInfo* II)
void overrideActiveModuleMacros(
clang::Preprocessor& PP,
clang::IdentifierInfo* II)
Declared at: clang/include/clang/Lex/Preprocessor.h:774
Parameters
¶void setLatest(clang::MacroDirective* MD)
void setLatest(clang::MacroDirective* MD)
Declared at: clang/include/clang/Lex/Preprocessor.h:747
Parameters
¶void setOverriddenMacros(
clang::Preprocessor& PP,
ArrayRef<clang::ModuleMacro*> Overrides)
void setOverriddenMacros(
clang::Preprocessor& PP,
ArrayRef<clang::ModuleMacro*> Overrides)
Declared at: clang/include/clang/Lex/Preprocessor.h:790
Parameters
- clang::Preprocessor& PP
- ArrayRef<clang::ModuleMacro*> Overrides
¶~MacroState()
~MacroState()
Declared at: clang/include/clang/Lex/Preprocessor.h:736