public boolean isNextTokenValue(String expectedValue) { Token nextToken = tokenQueue.peek(); if (nextToken == null) { // queue is empty return false; } return nextToken.getValue().equals(expectedValue); }
public Statement(@Nullable List<Token> tokens) { if (tokens == null || tokens.isEmpty()) { throw new IllegalArgumentException("A statement can't be initialized with an empty list of tokens"); } StringBuilder sb = new StringBuilder(); for (Token token : tokens) { sb.append(token.getValue()); } this.value = sb.toString(); this.startLine = tokens.get(0).getLine(); this.endLine = tokens.get(tokens.size() - 1).getLine(); }
@Override public boolean matchToken(TokenQueue tokenQueue, List<Token> matchedTokenList) { do { Token token = tokenQueue.poll(); matchedTokenList.add(token); if (uptoMatchTokens.contains(token.getValue())) { return true; } } while (tokenQueue.peek() != null); return false; }
@Override public boolean matchToken(TokenQueue tokenQueue, List<Token> matchedTokenList) { if (!tokenQueue.isNextTokenValue(lToken)) { return false; } int stack = 0; while (tokenQueue.peek() != null) { Token token = tokenQueue.poll(); matchedTokenList.add(token); if (lToken.equals(token.getValue())) { stack++; } else if (rToken.equals(token.getValue())) { stack--; } else if (except.equals(token.getValue())) { return false; } if (stack == 0) { return true; } } return false; }
@Override public boolean matchToken(TokenQueue tokenQueue, List<Token> matchedTokenList) { if (!tokenQueue.isNextTokenValue(lToken)) { return false; } int stack = 0; while (tokenQueue.peek() != null) { Token token = tokenQueue.poll(); if (lToken.equals(token.getValue())) { stack++; } else if (rToken.equals(token.getValue())) { stack--; } matchedTokenList.add(token); if (stack == 0) { return true; } } return false; }
public boolean isNextTokenValue(String expectedValue) { Token nextToken = tokenQueue.peek(); if (nextToken == null) { // queue is empty return false; } return nextToken.getValue().equals(expectedValue); }
public Statement(List<Token> tokens) { if (tokens == null || tokens.isEmpty()) { throw new IllegalArgumentException("A statement can't be initialized with an empty list of tokens"); } StringBuilder sb = new StringBuilder(); for (Token token : tokens) { sb.append(token.getValue()); } this.value = sb.toString(); this.startLine = tokens.get(0).getLine(); this.endLine = tokens.get(tokens.size() - 1).getLine(); }
@Override public boolean matchToken(TokenQueue tokenQueue, List<Token> matchedTokenList) { do { Token token = tokenQueue.poll(); matchedTokenList.add(token); if (uptoMatchTokens.contains(token.getValue())) { return true; } } while (tokenQueue.peek() != null); return false; }
@Override public boolean matchToken(TokenQueue tokenQueue, List<Token> matchedTokenList) { if (!tokenQueue.isNextTokenValue(lToken)) { return false; } int stack = 0; while (tokenQueue.peek() != null) { Token token = tokenQueue.poll(); matchedTokenList.add(token); if (lToken.equals(token.getValue())) { stack++; } else if (rToken.equals(token.getValue())) { stack--; } else if (except.equals(token.getValue())) { return false; } if (stack == 0) { return true; } } return false; }
@Override public boolean matchToken(TokenQueue tokenQueue, List<Token> matchedTokenList) { if (!tokenQueue.isNextTokenValue(lToken)) { return false; } int stack = 0; while (tokenQueue.peek() != null) { Token token = tokenQueue.poll(); if (lToken.equals(token.getValue())) { stack++; } else if (rToken.equals(token.getValue())) { stack--; } matchedTokenList.add(token); if (stack == 0) { return true; } } return false; }