OpenClonk
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros
aul::ast::VarDecl Class Referenceabstract

#include <C4AulAST.h>

Inheritance diagram for aul::ast::VarDecl:
[legend]
Collaboration diagram for aul::ast::VarDecl:
[legend]

Classes

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

struct aul::ast::VarDecl::Var

Definition at line 360 of file C4AulAST.h.

Class Members
ExprPtr init
string name

Member Enumeration Documentation

Enumerator
Func 
Object 
Global 

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

virtual void aul::ast::Node::accept ( ::aul::AstVisitor ) const
pure virtualinherited
virtual bool aul::ast::Stmt::has_value ( ) const
inlinevirtualinherited

Reimplemented in aul::ast::Expr.

Definition at line 132 of file C4AulAST.h.

132 { return false; }

Member Data Documentation

bool aul::ast::VarDecl::constant

Definition at line 358 of file C4AulAST.h.

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

Definition at line 365 of file C4AulAST.h.

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

Definition at line 123 of file C4AulAST.h.

Scope aul::ast::VarDecl::scope

Definition at line 357 of file C4AulAST.h.


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