Вынесен метод jumpLabel

This commit is contained in:
Victor 2015-04-24 16:32:02 +03:00
parent 3432fb3ab2
commit 4fddf04f07

View File

@ -78,6 +78,12 @@ public final class Parser {
this.position = position; this.position = position;
next(); next();
} }
public void jumpLabel(String label) {
if (labels.containsKey(label)) {
position = labels.get(label);
}
}
public void next() { public void next() {
// Команды разделяются на терминальные и нетерминальные. // Команды разделяются на терминальные и нетерминальные.
@ -410,9 +416,7 @@ public final class Parser {
private boolean jump() { private boolean jump() {
final String labelName = consume(TokenType.WORD).getText(); final String labelName = consume(TokenType.WORD).getText();
if (labels.containsKey(labelName)) { jumpLabel(labelName);
position = labels.get(labelName);
}
return false; return false;
} }