// ExprStmt public virtual bool Walk(ExprStmt node) { return true; }
public virtual void PostWalk(ExprStmt node) { }
public override void PostWalk(ExprStmt node) { }
// ExprStmt public override bool Walk(ExprStmt node) { return false; }
private Stmt ParseExprStmt() { Expr ret = ParseExpr(); if (!EatSemiOrInteractiveEndOfFile()) return null; if (ret is ErrorExpr) NextToken(); ExprStmt stmt = new ExprStmt(ret); stmt.SetLoc(_globalParent, ret.StartIndex, GetEnd()); if (_sourceUnit.Kind != SourceCodeKind.InteractiveCode && _sourceUnit.Kind != SourceCodeKind.AutoDetect) // don't normally allow statements like a, or a + 2, without assigning the value stmt.ValidateExpression(); return stmt; }
public override bool Walk(ExprStmt node) { UpdateLoops(node); return base.Walk(node); }
// ExprStmt public override bool Walk(ExprStmt node) { node.Parent = _currentScope; return base.Walk(node); }