|
clang
5.0.0
|
Represents a macro directive exported by a module. More...
#include "clang/Lex/MacroInfo.h"
Public Member Functions | |
| void | Profile (llvm::FoldingSetNodeID &ID) const |
| Module * | getOwningModule () const |
| Get the ID of the module that exports this macro. More... | |
| MacroInfo * | getMacroInfo () const |
| Get definition for this exported #define, or nullptr if this represents a #undef. More... | |
| unsigned | getNumOverridingMacros () const |
| Get the number of macros that override this one. More... | |
Static Public Member Functions | |
| static ModuleMacro * | create (Preprocessor &PP, Module *OwningModule, IdentifierInfo *II, MacroInfo *Macro, ArrayRef< ModuleMacro * > Overrides) |
| static void | Profile (llvm::FoldingSetNodeID &ID, Module *OwningModule, IdentifierInfo *II) |
Friends | |
| class | Preprocessor |
| typedef ModuleMacro *const * | overrides_iterator |
| Iterators over the overridden module IDs. More... | |
| overrides_iterator | overrides_begin () const |
| overrides_iterator | overrides_end () const |
| ArrayRef< ModuleMacro * > | overrides () const |
Represents a macro directive exported by a module.
There's an instance of this class for every macro #define or #undef that is the final directive for a macro name within a module. These entities also represent the macro override graph.
These are stored in a FoldingSet in the preprocessor.
Definition at line 476 of file MacroInfo.h.
| typedef ModuleMacro* const* clang::ModuleMacro::overrides_iterator |
Iterators over the overridden module IDs.
Definition at line 522 of file MacroInfo.h.
|
static |
Definition at line 237 of file MacroInfo.cpp.
References clang::Preprocessor::getPreprocessorAllocator().
Referenced by clang::Preprocessor::addModuleMacro().
|
inline |
Get definition for this exported #define, or nullptr if this represents a #undef.
Definition at line 518 of file MacroInfo.h.
|
inline |
Get the number of macros that override this one.
Definition at line 535 of file MacroInfo.h.
|
inline |
Get the ID of the module that exports this macro.
Definition at line 514 of file MacroInfo.h.
|
inline |
Definition at line 529 of file MacroInfo.h.
|
inline |
Definition at line 523 of file MacroInfo.h.
|
inline |
Definition at line 526 of file MacroInfo.h.
|
inline |
Definition at line 504 of file MacroInfo.h.
Referenced by clang::Preprocessor::addModuleMacro(), and clang::Preprocessor::getModuleMacro().
|
inlinestatic |
Definition at line 507 of file MacroInfo.h.
|
friend |
Definition at line 489 of file MacroInfo.h.
1.8.6