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

#include <ast.hpp>

Inheritance diagram for typeSpec:
Collaboration diagram for typeSpec:

Public Types

enum class  typeSpecKind : int16_t {
  Member , Func , Null , Elipsis ,
  DecltypeExpr
}
 

Public Member Functions

externModuleAccessExpressiongetMemberExpr () const
 
funcTypeSpecgetTypeSpec () 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::typeSpec::typeSpecKind kind
 
externModuleAccessExpressionmember
 
funcTypeSpecfunc
 
typeSpecelipsis
 
decltypeExprdecltypeExpression
 
bool isNull
 
yoi::vec< uint64_t > * arraySubscript
 

Detailed Description

Definition at line 328 of file ast.hpp.

Member Enumeration Documentation

◆ typeSpecKind

enum class typeSpecKind : int16_t
strong
Enumerator
Member 
Func 
Null 
Elipsis 
DecltypeExpr 

Definition at line 330 of file ast.hpp.

Member Function Documentation

◆ getMemberExpr()

externModuleAccessExpression & getMemberExpr ( ) const

Definition at line 55 of file ast.cpp.

References typeSpec::member.

◆ getTypeSpec()

funcTypeSpec & getTypeSpec ( ) const

Definition at line 59 of file ast.cpp.

References typeSpec::func.

Member Data Documentation

◆ arraySubscript

yoi::vec<uint64_t>* arraySubscript

Definition at line 342 of file ast.hpp.

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

◆ decltypeExpression

decltypeExpr* decltypeExpression

Definition at line 340 of file ast.hpp.

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

◆ elipsis

typeSpec* elipsis

Definition at line 339 of file ast.hpp.

Referenced by Formatter::format().

◆ func

◆ isNull

bool isNull

Definition at line 341 of file ast.hpp.

Referenced by Formatter::format().

◆ kind

◆ member


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