public SetLoc ( IronPython.Compiler.Ast.PythonAst globalParent, int start, int header, int end ) : void | ||
globalParent | IronPython.Compiler.Ast.PythonAst | |
start | int | |
header | int | |
end | int | |
return | void |
//while_stmt: 'while' expression ':' suite ['else' ':' suite] private WhileStatement ParseWhileStmt() { Eat(TokenKind.KeywordWhile); var start = GetStart(); Expression expr = ParseExpression(); var mid = GetEnd(); Statement body = ParseLoopSuite(); Statement else_ = null; if (MaybeEat(TokenKind.KeywordElse)) { else_ = ParseSuite(); } WhileStatement ret = new WhileStatement(expr, body, else_); ret.SetLoc(_globalParent, start, mid, GetEnd()); return ret; }
//while_stmt: 'while' test ':' suite ['else' ':' suite] private WhileStatement ParseWhileStmt() { Eat(TokenKind.KeywordWhile); Location start = GetStart(); Expression test = ParseTest(); Location mid = GetEnd(); Statement body = ParseSuite(); Statement else_ = null; if (MaybeEat(TokenKind.KeywordElse)) { else_ = ParseSuite(); } WhileStatement ret = new WhileStatement(test, body, else_); ret.SetLoc(GetExternal(), start, mid, GetEnd()); return ret; }