Ejemplo n.º 1
0
 public override void Visit(LetStatementNode node)
 {
     // We need to visit the initializer first so that it can't refer to variables
     // introduced in the pattern.
     Visit(node.Initializer);
     Visit(node.Pattern);
 }
Ejemplo n.º 2
0
        void LetStatement(ref StatementNode node)
        {
            ExpressionNode vnode = null;
            ExpressionNode enode = null;

            if (la.kind == 29)
            {
                Get();
            }
            if (la.kind == 1)
            {
                NumericReference(ref vnode);
                Expect(23);
                NumericExpression(ref enode);
            }
            else if (la.kind == 9)
            {
                StringVariable(ref vnode);
                Expect(23);
                StringExpression(ref enode);
            }
            else
            {
                SynErr(57);
            }
            node = new LetStatementNode((ReferenceNode)vnode, enode);
        }