#include "VariableAssignmentStatement.h" #include "bscript/compiler/ast/Identifier.h" #include "bscript/compiler/ast/NodeVisitor.h" namespace Pol::Bscript::Compiler { VariableAssignmentStatement::VariableAssignmentStatement( const SourceLocation& source_location, std::unique_ptr identifier, std::unique_ptr rhs ) : Statement( source_location ) { children.reserve( 2 ); children.push_back( std::move( identifier ) ); children.push_back( std::move( rhs ) ); } void VariableAssignmentStatement::accept( NodeVisitor& visitor ) { visitor.visit_variable_assignment_statement( *this ); } void VariableAssignmentStatement::describe_to( std::string& w ) const { w += "variable-assignment-statement"; } Identifier& VariableAssignmentStatement::identifier() { return child( 0 ); } Node& VariableAssignmentStatement::rhs() { return child( 1 ); } } // namespace Pol::Bscript::Compiler