clang
17.0.0git
|
A directive for setting the module visibility of a macro. More...
#include "clang/Lex/MacroInfo.h"
Public Member Functions | |
VisibilityMacroDirective (SourceLocation Loc, bool Public) | |
bool | isPublic () const |
Determine whether this macro is part of the public API of its module. More... | |
![]() | |
Kind | getKind () const |
SourceLocation | getLocation () const |
void | setPrevious (MacroDirective *Prev) |
Set previous definition of the macro with the same name. More... | |
const MacroDirective * | getPrevious () const |
Get previous definition of the macro with the same name. More... | |
MacroDirective * | getPrevious () |
Get previous definition of the macro with the same name. More... | |
bool | isFromPCH () const |
Return true if the macro directive was loaded from a PCH file. More... | |
void | setIsFromPCH () |
DefInfo | getDefinition () |
Traverses the macro directives history and returns the next macro definition directive along with info about its undefined location (if there is one) and if it is public or private. More... | |
const DefInfo | getDefinition () const |
bool | isDefined () const |
const MacroInfo * | getMacroInfo () const |
MacroInfo * | getMacroInfo () |
const DefInfo | findDirectiveAtLoc (SourceLocation L, const SourceManager &SM) const |
Find macro definition active in the specified source location. More... | |
void | dump () const |
Static Public Member Functions | |
static bool | classof (const MacroDirective *MD) |
static bool | classof (const VisibilityMacroDirective *) |
![]() | |
static bool | classof (const MacroDirective *) |
Additional Inherited Members | |
![]() | |
enum | Kind { MD_Define, MD_Undefine, MD_Visibility } |
![]() | |
MacroDirective (Kind K, SourceLocation Loc) | |
![]() | |
MacroDirective * | Previous = nullptr |
Previous macro directive for the same identifier, or nullptr. More... | |
SourceLocation | Loc |
unsigned | MDKind: 2 |
MacroDirective kind. More... | |
unsigned | IsFromPCH: 1 |
True if the macro directive was loaded from a PCH file. More... | |
unsigned | IsPublic: 1 |
Whether the macro has public visibility (when described in a module). More... | |
A directive for setting the module visibility of a macro.
Definition at line 467 of file MacroInfo.h.
|
inlineexplicit |
Definition at line 469 of file MacroInfo.h.
References clang::MacroDirective::IsPublic.
|
inlinestatic |
Definition at line 478 of file MacroInfo.h.
References clang::MacroDirective::getKind(), and clang::MacroDirective::MD_Visibility.
|
inlinestatic |
Definition at line 482 of file MacroInfo.h.
|
inline |
Determine whether this macro is part of the public API of its module.
Definition at line 476 of file MacroInfo.h.
References clang::MacroDirective::IsPublic.
Referenced by clang::MacroDirective::getDefinition().