hoshi-lang dev
Yet another programming language
Loading...
Searching...
No Matches
primary Class Reference

#include <ast.hpp>

Inheritance diagram for primary:
Collaboration diagram for primary:

Public Types

enum class  primaryKind : int8_t {
  memberExpr , basicLiterals , rExpr , typeIdExpression ,
  dynCastExpression , newExpression , lambdaExpr , funcExpr ,
  bracedInitalizerList
}
 

Public Member Functions

memberExprgetMemberExpr () const
 
basicLiteralsgetLiterals () const
 
rExprgetExpr () const
 
- Public Member Functions inherited from AST
 AST ()
 
 AST (lexer::token token)
 
std::tuple< yoi::indexT, yoi::indexTgetLocation ()
 
yoi::indexT getLine ()
 
yoi::indexT getColumn ()
 
yoi::lexer::tokengetToken ()
 

Public Attributes

enum yoi::primary::primaryKind kind
 
memberExprmember
 
basicLiteralsliterals
 
rExprexpr
 
typeIdExpressiontypeId
 
dynCastExpressiondynCast
 
newExpressionnewExpr
 
lambdaExprlambda
 
funcExprfunc
 
bracedInitalizerListbracedInitalizer
 
decltypeExprdecltypeExpr
 

Detailed Description

Definition at line 409 of file ast.hpp.

Member Enumeration Documentation

◆ primaryKind

enum class primaryKind : int8_t
strong
Enumerator
memberExpr 
basicLiterals 
rExpr 
typeIdExpression 
dynCastExpression 
newExpression 
lambdaExpr 
funcExpr 
bracedInitalizerList 

Definition at line 413 of file ast.hpp.

Member Function Documentation

◆ getExpr()

rExpr & getExpr ( ) const

Definition at line 107 of file ast.cpp.

References primary::expr.

◆ getLiterals()

basicLiterals & getLiterals ( ) const

Definition at line 103 of file ast.cpp.

References primary::literals.

◆ getMemberExpr()

memberExpr & getMemberExpr ( ) const

Definition at line 99 of file ast.cpp.

References primary::member.

Member Data Documentation

◆ bracedInitalizer

bracedInitalizerList* bracedInitalizer

Definition at line 432 of file ast.hpp.

Referenced by yoi::finalizeAST(), Formatter::format(), and visitor::visit().

◆ decltypeExpr

Definition at line 433 of file ast.hpp.

◆ dynCast

Definition at line 428 of file ast.hpp.

Referenced by yoi::finalizeAST(), Formatter::format(), and visitor::visit().

◆ expr

rExpr* expr

Definition at line 426 of file ast.hpp.

Referenced by yoi::finalizeAST(), Formatter::format(), primary::getExpr(), and visitor::visit().

◆ func

funcExpr* func

Definition at line 431 of file ast.hpp.

Referenced by yoi::finalizeAST(), Formatter::format(), and visitor::visit().

◆ kind

◆ lambda

lambdaExpr* lambda

Definition at line 430 of file ast.hpp.

Referenced by yoi::finalizeAST(), Formatter::format(), and visitor::visit().

◆ literals

basicLiterals* literals

Definition at line 425 of file ast.hpp.

Referenced by yoi::finalizeAST(), Formatter::format(), primary::getLiterals(), and visitor::visit().

◆ member

memberExpr* member

◆ newExpr

newExpression* newExpr

Definition at line 429 of file ast.hpp.

Referenced by yoi::finalizeAST(), Formatter::format(), and visitor::visit().

◆ typeId

Definition at line 427 of file ast.hpp.

Referenced by yoi::finalizeAST(), Formatter::format(), and visitor::visit().


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