clang: clang::MacroDefinition Class Reference (original) (raw)

A description of the current definition of a macro. More...

#include "[clang/Lex/MacroInfo.h](MacroInfo%5F8h%5Fsource.html)"

Public Member Functions
MacroDefinition ()=default
MacroDefinition (DefMacroDirective *MD, ArrayRef< ModuleMacro * > MMs, bool IsAmbiguous)
operator bool () const
Determine whether there is a definition of this macro.
MacroInfo * getMacroInfo () const
Get the MacroInfo that should be used for this definition.
bool isAmbiguous () const
true if the definition is ambiguous, false otherwise.
DefMacroDirective * getLocalDirective () const
Get the latest non-imported, non-#undef'd macro definition for this macro.
ArrayRef< ModuleMacro * > getModuleMacros () const
Get the active module macros for this macro.
template
void forAllDefinitions (Fn F) const

A description of the current definition of a macro.

The definition of a macro comprises a set of (at least one) defining entities, which are either local MacroDirectives or imported ModuleMacros.

Definition at line 590 of file MacroInfo.h.

clang::MacroDefinition::MacroDefinition ( ) default

MacroDefinition() [2/2]

forAllDefinitions()

template

void clang::MacroDefinition::forAllDefinitions ( Fn F) const inline

getLocalDirective()

Get the latest non-imported, non-#undef'd macro definition for this macro.

Definition at line 619 of file MacroInfo.h.

getMacroInfo()

MacroInfo * clang::MacroDefinition::getMacroInfo ( ) const inline

getModuleMacros()

Get the active module macros for this macro.

Definition at line 624 of file MacroInfo.h.

isAmbiguous()

bool clang::MacroDefinition::isAmbiguous ( ) const inline

true if the definition is ambiguous, false otherwise.

Definition at line 615 of file MacroInfo.h.

operator bool()

clang::MacroDefinition::operator bool ( ) const inlineexplicit

Determine whether there is a definition of this macro.

Definition at line 601 of file MacroInfo.h.


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