|
| MethodDecl (BumpAllocator &alloc, Modifiers modifiers, SourceRange location, string_view name, Type *returnType, array_ref< VarDecl * > parameters, bool isConstructor, Stmt *body) noexcept |
|
auto | modifiers () const |
|
bool | isConstructor () const |
|
auto | parameters () const |
|
bool | hasCanonicalName () const override |
| Returns if the declaration has a canonical name.
|
|
std::ostream & | print (std::ostream &os, int indentation=0) const override |
|
int | printDotNode (DotPrinter &dp) const override |
|
void | setParent (DeclContext *parent) override |
| Overrides the setParent to construct canonical name.
|
|
template<std::ranges::range T> |
requires std::same_as< std::ranges::range_value_t< T >, VarDecl * > void | addDecls (T decls) |
|
SourceRange | location () const override |
| Returns the location of the declaration. This is an abstract method to allow abstract classes of Decl without location.
|
|
ReturnType | returnTy () const |
|
DeclContext const * | asDeclContext () const override |
|
Decl const * | asDecl () const override |
|
Stmt const * | body () const |
|
utils::Generator< ast::AstNode const * > | children () const override |
| Returns a generator for the children of this node.
|
|
std::ostream & | printSignature (std::ostream &os) const |
|
void | dumpSignature () const |
|
virtual utils::Generator< ast::Decl const * > | decls () const |
| Generator to yield all children decls of the context.
|
|
| AstNode (const AstNode &)=delete |
|
| AstNode (AstNode &&)=delete |
|
AstNode & | operator= (const AstNode &)=delete |
|
AstNode & | operator= (AstNode &&)=delete |
|
std::ostream & | printDot (std::ostream &os) const |
|
void | dump () const |
|
utils::Generator< AstNode * > | mut_children () |
| Returns a generator for the mutable children of this node.
|
|
| Decl (BumpAllocator &alloc, std::string_view name) noexcept |
|
std::string_view | name () const |
| Gets the simple name of this declaration.
|
|
DeclContext * | parent () const |
| Gets the context in which this declaration is declared.
|
|
std::string_view | getCanonicalName () const |
| Gets the fully qualified name of this declaration. Returns undefined value if the declaration does not have a canonical name.
|
|