//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);
 }