Code generation and output file gen

This commit is contained in:
Clemens-Dautermann 2020-08-19 22:55:28 +02:00
parent 3ea0178678
commit 26d10cfef0
8 changed files with 197 additions and 69 deletions

View file

@ -1,10 +1,10 @@
namespace Compiler.Parser
namespace Compiler.Parser.Nodes
{
public enum NodeType
{
ProgramNode,
FunctionNode,
StatementNode,
ReturnStatementNode,
ExpressionNode
}
}

View file

@ -6,7 +6,7 @@ namespace Compiler.Parser.Nodes
public ReturnNode()
{
this.NodeType = NodeType.StatementNode;
this.NodeType = NodeType.ReturnStatementNode;
}
}
}

View file

@ -80,14 +80,14 @@ namespace Compiler.Parser
CheckFirstTokenAndRemove(TokenType.OpenBraceToken);
//add returned child node to AST
n.Children.Add(Parse(NodeType.StatementNode));
n.Children.Add(Parse(NodeType.ReturnStatementNode));
//remove trailing }
CheckFirstTokenAndRemove(TokenType.CloseBraceToken);
break;
case NodeType.StatementNode:
case NodeType.ReturnStatementNode:
//TODO: This Type of return/statement node will probably need fixing later
n = new ReturnNode();