aul::ast::VarDecl Class Referenceabstract

#include <C4AulAST.h>

Inheritance diagram for aul::ast::VarDecl:
Collaboration diagram for aul::ast::VarDecl:


struct  Var

Public Types

enum  Scope { Scope::Func, Scope::Object, Scope::Global }

Public Member Functions

virtual bool has_value () const
virtual void accept (::aul::AstVisitor *) const =0

Public Attributes

Scope scope
bool constant
std::vector< Vardecls
const char * loc = nullptr

Detailed Description

Definition at line 346 of file C4AulAST.h.

Class Documentation

◆ aul::ast::VarDecl::Var

struct aul::ast::VarDecl::Var

Definition at line 360 of file C4AulAST.h.

Class Members
ExprPtr init
string name

Member Enumeration Documentation

◆ Scope


Definition at line 350 of file C4AulAST.h.

351  {
352  Func,
353  Object,
354  Global
355  };
C4Object * Object(C4PropList *_this)
Definition: C4AulDefFunc.h:34

Member Function Documentation

◆ accept()

virtual void aul::ast::Node::accept ( ::aul::AstVisitor ) const
pure virtualinherited

◆ has_value()

virtual bool aul::ast::Stmt::has_value ( ) const

Reimplemented in aul::ast::Expr.

Definition at line 132 of file C4AulAST.h.

132 { return false; }

Member Data Documentation

◆ constant

bool aul::ast::VarDecl::constant

Definition at line 358 of file C4AulAST.h.

◆ decls

std::vector<Var> aul::ast::VarDecl::decls

Definition at line 365 of file C4AulAST.h.

◆ loc

const char* aul::ast::Node::loc = nullptr

Definition at line 123 of file C4AulAST.h.

◆ scope

Scope aul::ast::VarDecl::scope

Definition at line 357 of file C4AulAST.h.

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