|
The Psyche Project
|
Public Member Functions | |
| DeclarationKind | kind () const |
| virtual const Identifier * | identifier () const =0 |
| const Scope * | enclosingScope () const |
| const NameSpace | nameSpace () const |
| std::vector< SyntaxReference > | declaringSyntaxReferences () const |
| Location | location () const |
| virtual Declaration * | asDeclaration () override |
| virtual const Declaration * | asDeclaration () const override |
| virtual Function * | asFunction () |
| virtual const Function * | asFunction () const |
| virtual ObjectDeclaration * | asObjectDeclaration () |
| virtual const ObjectDeclaration * | asObjectDeclaration () const |
| virtual TypeDeclaration * | asTypeDeclaration () |
| virtual const TypeDeclaration * | asTypeDeclaration () const |
Public Member Functions inherited from psy::C::Symbol | |
| SymbolKind | kind () const |
| virtual Program * | asProgram () |
| virtual const Program * | asProgram () const |
| virtual TranslationUnit * | asTranslationUnit () |
| virtual const TranslationUnit * | asTranslationUnit () const |
| const Symbol * | containingSymbol () const |
| virtual std::string | toDisplayString () const =0 |
Protected Member Functions | |
| Declaration (SymbolImpl *p, DeclarationKind declK) | |
| Declaration (const Declaration &)=delete | |
| Declaration & | operator= (const Declaration &)=delete |
Protected Member Functions inherited from psy::C::Symbol | |
| Symbol (SymbolImpl *p) | |
| Symbol (const Symbol &)=delete | |
| Symbol & | operator= (const Symbol &)=delete |
Additional Inherited Members | |
Protected Attributes inherited from psy::C::Symbol | |
| std::unique_ptr< SymbolImpl > | impl_ |
|
inlineoverridevirtual |
Cast this Symbol as a Declaration.
Reimplemented from psy::C::Symbol.
|
inlineoverridevirtual |
Cast this Symbol as a Declaration.
Reimplemented from psy::C::Symbol.
|
inlinevirtual |
Cast this Declaration.
Reimplemented in psy::C::Function.
|
inlinevirtual |
Cast this Declaration.
Reimplemented in psy::C::Function.
|
inlinevirtual |
Cast this Declaration.
Reimplemented in psy::C::ObjectDeclaration.
|
inlinevirtual |
Cast this Declaration.
Reimplemented in psy::C::ObjectDeclaration.
|
inlinevirtual |
Cast this Declaration.
Reimplemented in psy::C::TypeDeclaration.
|
inlinevirtual |
Cast this Declaration.
Reimplemented in psy::C::TypeDeclaration.
| std::vector< SyntaxReference > Declaration::declaringSyntaxReferences | ( | ) | const |
References to the SyntaxNodes that declare this Declaration.
| const Scope * Declaration::enclosingScope | ( | ) | const |
The Scope that encloses this Declaration.
|
pure virtual |
The Identifier with which this Declaration is declared.
Implemented in psy::C::ObjectDeclaration, psy::C::TagTypeDeclaration, psy::C::Function, and psy::C::Typedef.
| DeclarationKind Declaration::kind | ( | ) | const |
The DeclarationKind of this Symbol.
| Location Declaration::location | ( | ) | const |
The Location of this Declaration.
| const NameSpace Declaration::nameSpace | ( | ) | const |
The NameSpace of this Declaration.
1.8.18