clang  3.7.0
Public Member Functions | Static Public Member Functions | List of all members
clang::MacroExpansion Class Reference

Records the location of a macro expansion. More...

#include <PreprocessingRecord.h>

Inheritance diagram for clang::MacroExpansion:
[legend]
Collaboration diagram for clang::MacroExpansion:
[legend]

Public Member Functions

 MacroExpansion (IdentifierInfo *BuiltinName, SourceRange Range)
 
 MacroExpansion (MacroDefinitionRecord *Definition, SourceRange Range)
 
bool isBuiltinMacro () const
 True if it is a builtin macro. More...
 
const IdentifierInfogetName () const
 The name of the macro being expanded. More...
 
MacroDefinitionRecordgetDefinition () const
 The definition of the macro being expanded. May return null if this is a builtin macro. More...
 
- Public Member Functions inherited from clang::PreprocessedEntity
EntityKind getKind () const
 Retrieve the kind of preprocessed entity stored in this object. More...
 
SourceRange getSourceRange () const LLVM_READONLY
 Retrieve the source range that covers this entire preprocessed entity. More...
 
bool isInvalid () const
 Returns true if there was a problem loading the preprocessed entity. More...
 
void * operator new (size_t bytes, PreprocessingRecord &PR, unsigned alignment=8) throw ()
 
void * operator new (size_t bytes, void *mem) throw ()
 
void operator delete (void *ptr, PreprocessingRecord &PR, unsigned alignment) throw ()
 
void operator delete (void *, std::size_t) throw ()
 
void operator delete (void *, void *) throw ()
 

Static Public Member Functions

static bool classof (const PreprocessedEntity *PE)
 

Additional Inherited Members

- Public Types inherited from clang::PreprocessedEntity
enum  EntityKind {
  InvalidKind, MacroExpansionKind, MacroDefinitionKind, InclusionDirectiveKind,
  FirstPreprocessingDirective = MacroDefinitionKind, LastPreprocessingDirective = InclusionDirectiveKind
}
 The kind of preprocessed entity an object describes. More...
 
- Protected Member Functions inherited from clang::PreprocessedEntity
 PreprocessedEntity (EntityKind Kind, SourceRange Range)
 

Detailed Description

Records the location of a macro expansion.

Definition at line 160 of file PreprocessingRecord.h.

Constructor & Destructor Documentation

clang::MacroExpansion::MacroExpansion ( IdentifierInfo BuiltinName,
SourceRange  Range 
)
inline

Definition at line 166 of file PreprocessingRecord.h.

clang::MacroExpansion::MacroExpansion ( MacroDefinitionRecord Definition,
SourceRange  Range 
)
inline

Definition at line 170 of file PreprocessingRecord.h.

Member Function Documentation

static bool clang::MacroExpansion::classof ( const PreprocessedEntity PE)
inlinestatic
MacroDefinitionRecord* clang::MacroExpansion::getDefinition ( ) const
inline

The definition of the macro being expanded. May return null if this is a builtin macro.

Definition at line 186 of file PreprocessingRecord.h.

Referenced by getName().

const IdentifierInfo* clang::MacroExpansion::getName ( ) const
inline

The name of the macro being expanded.

Definition at line 178 of file PreprocessingRecord.h.

References getDefinition(), and clang::IdentifierInfo::getName().

bool clang::MacroExpansion::isBuiltinMacro ( ) const
inline

True if it is a builtin macro.

Definition at line 175 of file PreprocessingRecord.h.


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