hoshi-lang dev
Yet another programming language
Loading...
Searching...
No Matches
ast.hpp File Reference
#include <cstdint>
#include "lexer.hpp"
#include <share/def.hpp>
Include dependency graph for ast.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  AST
 
class  bracedInitalizerList
 
class  typeAliasStmt
 
class  marcoPair
 
class  marcoDescriptor
 
class  lambdaExpr
 
class  funcExpr
 
class  basicLiterals
 
class  identifier
 
class  identifierWithTypeSpec
 
class  defTemplateArgSpec
 
class  defTemplateArg
 
class  templateArgSpec
 
class  templateArg
 
class  invocationArguments
 
class  definitionArguments
 
class  funcTypeSpec
 
class  typeSpec
 
class  subscript
 
class  identifierWithTemplateArg
 
class  identifierWithDefTemplateArg
 
class  subscriptExpr
 
class  memberExpr
 
class  newExpression
 
class  primary
 
class  abstractExpr
 
class  uniqueExpr
 
class  leftExpr
 
class  mulExpr
 
class  addExpr
 
class  shiftExpr
 
class  relationalExpr
 
class  equalityExpr
 
class  andExpr
 
class  exclusiveExpr
 
class  inclusiveExpr
 
class  logicalAndExpr
 
class  logicalOrExpr
 
class  rExpr
 
class  useStmt
 
class  decltypeExpr
 
class  funcDefStmt
 
class  interfaceDefInnerPair
 
class  interfaceDefInner
 
class  interfaceDefStmt
 
class  structDefInnerPair
 
class  structDefInner
 
class  structDefStmt
 
class  dataStructDefStmt
 
class  implInnerPair
 
class  implInner
 
class  implStmt
 
class  letAssignmentPairLHS
 
class  letAssignmentPair
 
class  letStmt
 
class  globalStmt
 
union  globalStmt::vValue
 
class  ifStmt
 
struct  ifStmt::ifBlock
 
class  whileStmt
 
class  forStmt
 
class  forEachStmt
 
class  returnStmt
 
class  continueStmt
 
class  breakStmt
 
class  inCodeBlockStmt
 
union  inCodeBlockStmt::vValue
 
class  innerMethodDecl
 
class  innerMethodDef
 
class  constructorDecl
 
class  finalizerDecl
 
class  constructorDef
 
class  finalizerDef
 
class  codeBlock
 
class  hoshiModule
 
class  externModuleAccessExpression
 
class  exportDecl
 
class  importDecl
 
class  throwStmt
 
class  catchParam
 
class  tryCatchStmt
 
class  typeIdExpression
 
class  dynCastExpression
 
class  unnamedDefinitionArguments
 
class  enumerationDefinition
 
class  enumerationPair
 
class  yieldStmt
 
class  conceptDefinition
 
class  conceptStmt
 
union  conceptStmt::ConceptStmtValue
 
class  satisfyStmt
 
class  satisfyClause
 

Namespaces

namespace  yoi
 

Functions

void finalizeAST (satisfyClause *ptr)
 
void finalizeAST (satisfyStmt *ptr)
 
void finalizeAST (conceptStmt *ptr)
 
void finalizeAST (conceptDefinition *ptr)
 
void finalizeAST (exportDecl *ptr)
 
void finalizeAST (importInner *ptr)
 
void finalizeAST (importDecl *ptr)
 
void finalizeAST (externModuleAccessExpression *ptr)
 
void finalizeAST (hoshiModule *ptr)
 
void finalizeAST (leftExpr *ptr)
 
void finalizeAST (basicLiterals *ptr)
 
void finalizeAST (identifier *ptr)
 
void finalizeAST (typeSpec *ptr)
 
void finalizeAST (identifierWithTypeSpec *ptr)
 
void finalizeAST (defTemplateArgSpec *ptr)
 
void finalizeAST (defTemplateArg *ptr)
 
void finalizeAST (templateArgSpec *ptr)
 
void finalizeAST (templateArg *ptr)
 
void finalizeAST (invocationArguments *ptr)
 
void finalizeAST (definitionArguments *ptr)
 
void finalizeAST (funcTypeSpec *ptr)
 
void finalizeAST (subscript *ptr)
 
void finalizeAST (identifierWithDefTemplateArg *ptr)
 
void finalizeAST (identifierWithTemplateArg *ptr)
 
void finalizeAST (subscriptExpr *ptr)
 
void finalizeAST (memberExpr *ptr)
 
void finalizeAST (primary *ptr)
 
void finalizeAST (decltypeExpr *ptr)
 
void finalizeAST (uniqueExpr *ptr)
 
void finalizeAST (mulExpr *ptr)
 
void finalizeAST (addExpr *ptr)
 
void finalizeAST (shiftExpr *ptr)
 
void finalizeAST (relationalExpr *ptr)
 
void finalizeAST (equalityExpr *ptr)
 
void finalizeAST (andExpr *ptr)
 
void finalizeAST (exclusiveExpr *ptr)
 
void finalizeAST (inclusiveExpr *ptr)
 
void finalizeAST (logicalAndExpr *ptr)
 
void finalizeAST (logicalOrExpr *ptr)
 
void finalizeAST (rExpr *ptr)
 
void finalizeAST (codeBlock *ptr)
 
void finalizeAST (useStmt *ptr)
 
void finalizeAST (funcDefStmt *ptr)
 
void finalizeAST (interfaceDefInner *ptr)
 
void finalizeAST (interfaceDefInnerPair *ptr)
 
void finalizeAST (interfaceDefStmt *ptr)
 
void finalizeAST (structDefInnerPair *ptr)
 
void finalizeAST (structDefInner *ptr)
 
void finalizeAST (structDefStmt *ptr)
 
void finalizeAST (implInnerPair *ptr)
 
void finalizeAST (implInner *ptr)
 
void finalizeAST (implStmt *ptr)
 
void finalizeAST (letAssignmentPair *ptr)
 
void finalizeAST (letStmt *ptr)
 
void finalizeAST (globalStmt *ptr)
 
void finalizeAST (ifStmt *ptr)
 
void finalizeAST (whileStmt *ptr)
 
void finalizeAST (forStmt *ptr)
 
void finalizeAST (forEachStmt *ptr)
 
void finalizeAST (returnStmt *ptr)
 
void finalizeAST (continueStmt *ptr)
 
void finalizeAST (breakStmt *ptr)
 
void finalizeAST (inCodeBlockStmt *ptr)
 
void finalizeAST (innerMethodDecl *ptr)
 
void finalizeAST (innerMethodDef *ptr)
 
void finalizeAST (constructorDecl *ptr)
 
void finalizeAST (constructorDef *ptr)
 
void finalizeAST (tryCatchStmt *ptr)
 
void finalizeAST (catchParam *ptr)
 
void finalizeAST (throwStmt *ptr)
 
void finalizeAST (dynCastExpression *ptr)
 
void finalizeAST (typeIdExpression *ptr)
 
void finalizeAST (newExpression *ptr)
 
void finalizeAST (abstractExpr *ptr)
 
void finalizeAST (lambdaExpr *ptr)
 
void finalizeAST (unnamedDefinitionArguments *ptr)
 
void finalizeAST (marcoPair *ptr)
 
void finalizeAST (marcoDescriptor *ptr)
 
void finalizeAST (typeAliasStmt *ptr)
 
void finalizeAST (finalizerDef *ptr)
 
void finalizeAST (finalizerDecl *ptr)
 
void finalizeAST (funcExpr *ptr)
 
void finalizeAST (letAssignmentPairLHS *ptr)
 
void finalizeAST (enumerationDefinition *ptr)
 
void finalizeAST (enumerationPair *ptr)
 
void finalizeAST (bracedInitalizerList *ptr)
 
void finalizeAST (yieldStmt *ptr)