Joos1W Compiler Framework
All Classes Functions Typedefs Pages
ast::InterfaceDecl Class Referencefinal
Inheritance diagram for ast::InterfaceDecl:

Public Member Functions

 InterfaceDecl (BumpAllocator &alloc, Modifiers modifiers, SourceRange location, string_view name, array_ref< ReferenceType * > extends, ReferenceType *objectSuperclass, array_ref< Decl * > interfaceBodyDecls) throw ()
 
auto extends () const
 
auto methods () const
 
auto modifiers () const
 
auto const * objectSuperclass () 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.
 
SourceRange location () const override
 Returns the location of the declaration. This is an abstract method to allow abstract classes of Decl without location.
 
DeclContext const * asDeclContext () const override
 
Decl const * asDecl () const override
 
utils::Generator< ast::AstNode const * > children () const override
 Returns a generator for the children of this node.
 
- Public Member Functions inherited from ast::DeclContext
virtual utils::Generator< ast::Decl const * > decls () const
 Generator to yield all children decls of the context.
 
- Public Member Functions inherited from ast::AstNode
 AstNode (const AstNode &)=delete
 
 AstNode (AstNode &&)=delete
 
AstNodeoperator= (const AstNode &)=delete
 
AstNodeoperator= (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.
 
- Public Member Functions inherited from ast::Decl
 Decl (BumpAllocator &alloc, std::string_view name) noexcept
 
std::string_view name () const
 Gets the simple name of this declaration.
 
DeclContextparent () 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.
 

Additional Inherited Members

- Static Protected Member Functions inherited from ast::AstNode
static std::string indent (int indentation)
 Get a string of spaces for indentation. More...
 
- Protected Attributes inherited from ast::Decl
std::pmr::string canonicalName_
 

Detailed Description

Definition at line 131 of file DeclContext.h.


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