//Pop left and right side of assignment statement public override void ExitAssignStatement([NotNull] CmanParser.AssignStatementContext context) { var right = (IASTExprNode)_nodes.Pop(); var left = (IASTExprNode)_nodes.Pop(); var assignStmt = (ASTAssignStatementNode)_nodes.Peek(); assignStmt.Right = right; assignStmt.Left = left; }
//Push assign statement to stack public override void EnterAssignStatement([NotNull] CmanParser.AssignStatementContext context) { _nodes.Push(new ASTAssignStatementNode(context, _nodes.Peek())); }
public ASTAssignStatementNode(CmanParser.AssignStatementContext context, ASTNode parent) : base(parent) { SetLocation(context); }