Mercurial > projects > dil
changeset 174:e51c9ee66ea0
- Implemented parseBreakStatement().
author | aziz |
---|---|
date | Sat, 14 Jul 2007 10:40:03 +0000 |
parents | c2714ba44350 |
children | 522df6f0f230 |
files | trunk/src/Parser.d trunk/src/Statements.d |
diffstat | 2 files changed, 22 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/trunk/src/Parser.d Sat Jul 14 10:36:02 2007 +0000 +++ b/trunk/src/Parser.d Sat Jul 14 10:40:03 2007 +0000 @@ -1160,6 +1160,9 @@ case T.Continue: s = parseContinueStatement(); break; + case T.Break: + s = parseBreakStatement(); + break; default: // TODO: issue error msg and return IllegalStatement. } @@ -1403,6 +1406,20 @@ return new ContinueStatement(ident); } + Statement parseBreakStatement() + { + assert(token.type == T.Break); + nT(); + string ident; + if (token.type == T.Identifier) + { + ident = token.identifier; + nT(); + } + require(T.Semicolon); + return new BreakStatement(ident); + } + /+++++++++++++++++++++++++++++ + Expression parsing methods + +++++++++++++++++++++++++++++/