public override object Visit(WithStatement withStatement, object data)
 {
     withStatements.Add(withStatement);
     return base.Visit(withStatement, data);
 }
 public object Visit(WithStatement withStatement, object data)
 {
     DebugOutput(withStatement);
     withExpressionStack.Push(withStatement.WithExpression);
     withStatement.Body.AcceptVisitor(this, data);
     withExpressionStack.Pop();
     return null;
 }
예제 #3
0
	void WithStatement(
#line  2467 "VBNET.ATG" 
out Statement withStatement) {

#line  2469 "VBNET.ATG" 
		Statement blockStmt = null;
		Expression expr = null;
		
		Expect(184);

#line  2472 "VBNET.ATG" 
		Point start = t.Location; 
		Expr(
#line  2473 "VBNET.ATG" 
out expr);
		EndOfStmt();

#line  2475 "VBNET.ATG" 
		withStatement = new WithStatement(expr);
		withStatement.StartLocation = start;
		withStatements.Push(withStatement);
		
		Block(
#line  2479 "VBNET.ATG" 
out blockStmt);

#line  2481 "VBNET.ATG" 
		((WithStatement)withStatement).Body = (BlockStatement)blockStmt;
		withStatements.Pop();
		
		Expect(89);
		Expect(184);

#line  2485 "VBNET.ATG" 
		withStatement.EndLocation = t.Location; 
	}
        public virtual object Visit(WithStatement withStatement, object data)
        {
            if (withStatement.WithExpression != null) {
                withStatement.WithExpression.AcceptVisitor(this, data);
            }

            if (withStatement.Body == null) {
                return null;
            }
            return withStatement.Body.AcceptVisitor(this, data);
        }