Added parser project
This commit is contained in:
@@ -4,7 +4,7 @@
|
||||
|
||||
namespace LXC::AST
|
||||
{
|
||||
FunctionCall::FunctionCall (Identifier& functionName, std::vector<std::unique_ptr<NodeValue>>& arguments)
|
||||
FunctionCall::FunctionCall (Identifier& functionName, ValueList& arguments)
|
||||
: NodeValue(NodeType::FunctionCall), m_FuncName(std::move(functionName)), m_Arguments(std::move(arguments))
|
||||
{}
|
||||
|
||||
@@ -12,7 +12,7 @@ namespace LXC::AST
|
||||
: NodeValue(NodeType::IntLiteral), m_NumberValue(std::move(value))
|
||||
{}
|
||||
|
||||
Operation::Operation(std::unique_ptr<NodeValue>& left, Lexer::Token::TokenType operand, std::unique_ptr<NodeValue>& right)
|
||||
Operation::Operation(NodeValuePtr& left, Lexer::Token::TokenType operand, NodeValuePtr& right)
|
||||
: NodeValue(NodeType::Operation), m_Lhs(std::move(left)), m_Operand(operand), m_Rhs(std::move(right))
|
||||
{}
|
||||
|
||||
@@ -20,11 +20,11 @@ namespace LXC::AST
|
||||
: Node(NodeType::Var_Declare), m_Name(std::move(name)), m_Value(nullptr)
|
||||
{}
|
||||
|
||||
VarDeclaration::VarDeclaration(Identifier& name, std::unique_ptr<VarAssignment>& value)
|
||||
VarDeclaration::VarDeclaration(Identifier& name, NodeValuePtr& value)
|
||||
: Node(NodeType::Var_Declare), m_Name(std::move(name)), m_Value(std::move(value))
|
||||
{}
|
||||
|
||||
VarAssignment::VarAssignment(Identifier& name, std::unique_ptr<NodeValue>& value)
|
||||
VarAssignment::VarAssignment(Identifier& name, NodeValuePtr& value)
|
||||
: Node(NodeType::Var_Assign), m_Value(std::move(value))
|
||||
{}
|
||||
|
||||
@@ -32,11 +32,11 @@ namespace LXC::AST
|
||||
: NodeValue(NodeType::Var_Access), m_Name(std::move(m_Name))
|
||||
{}
|
||||
|
||||
IfBranch::IfBranch(std::unique_ptr<NodeValue>& condition, std::vector<std::unique_ptr<Node>>& body)
|
||||
IfBranch::IfBranch(NodeValuePtr& condition, SyntaxBranch& body)
|
||||
: Node(NodeType::IfBranch), m_Condition(std::move(condition)), m_Body(std::move(body))
|
||||
{}
|
||||
|
||||
ReturnStatement::ReturnStatement(std::unique_ptr<NodeValue>& value)
|
||||
ReturnStatement::ReturnStatement(NodeValuePtr& value)
|
||||
: Node(NodeType::ReturnVal), m_ReturnValue(std::move(m_ReturnValue))
|
||||
{}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user