@Override public IToken evaluate(ICharacterScanner scanner) { int c= scanner.read(); if (c != ICharacterScanner.EOF && fDetector.isWordStart((char) c)) { if (fColumn == UNDEFINED || (fColumn == scanner.getColumn() - 1)) { fBuffer.setLength(0); do { fBuffer.append((char) c); c= scanner.read(); } while (c != ICharacterScanner.EOF && fDetector.isWordPart((char) c)); scanner.unread(); String buffer= fBuffer.toString(); // If case-insensitive, convert to lower case before accessing the map if (fIgnoreCase) buffer= buffer.toLowerCase(); IToken token= fWords.get(buffer); if (token != null) return token; if (fDefaultToken.isUndefined()) unreadBuffer(scanner); return fDefaultToken; } } scanner.unread(); return Token.UNDEFINED; }
@Override public IToken evaluate(ICharacterScanner scanner) { int c= scanner.read(); if (c != ICharacterScanner.EOF && fDetector.isWordStart((char) c)) { if (fColumn == UNDEFINED || (fColumn == scanner.getColumn() - 1)) { fBuffer.setLength(0); do { fBuffer.append((char) c); c= scanner.read(); } while (c != ICharacterScanner.EOF && fDetector.isWordPart((char) c)); scanner.unread(); String buffer= fBuffer.toString(); // If case-insensitive, convert to lower case before accessing the map if (fIgnoreCase) buffer= buffer.toLowerCase(); IToken token= fWords.get(buffer); if (token != null) return token; if (fDefaultToken.isUndefined()) unreadBuffer(scanner); return fDefaultToken; } } scanner.unread(); return Token.UNDEFINED; }
public IToken evaluate(ICharacterScanner scanner) { int c= scanner.read(); if (c != ICharacterScanner.EOF && fDetector.isWordStart((char) c)) { if (fColumn == UNDEFINED || (fColumn == scanner.getColumn() - 1)) { fBuffer.setLength(0); do { fBuffer.append((char) c); c= scanner.read(); } while (c != ICharacterScanner.EOF && fDetector.isWordPart((char) c)); scanner.unread(); String buffer= fBuffer.toString(); // If case-insensitive, convert to lower case before accessing the map if (fIgnoreCase) buffer= buffer.toLowerCase(); IToken token= (IToken)fWords.get(buffer); if (token != null) return token; if (fDefaultToken.isUndefined()) unreadBuffer(scanner); return fDefaultToken; } } scanner.unread(); return Token.UNDEFINED; }
public IToken evaluate(ICharacterScanner scanner) { int c= scanner.read(); if (c != ICharacterScanner.EOF && fDetector.isWordStart((char) c)) { if (fColumn == UNDEFINED || (fColumn == scanner.getColumn() - 1)) { fBuffer.setLength(0); do { fBuffer.append((char) c); c= scanner.read(); } while (c != ICharacterScanner.EOF && fDetector.isWordPart((char) c)); scanner.unread(); String buffer= fBuffer.toString(); // If case-insensitive, convert to lower case before accessing the map if (fIgnoreCase) buffer= buffer.toLowerCase(); IToken token= (IToken)fWords.get(buffer); if (token != null) return token; if (fDefaultToken.isUndefined()) unreadBuffer(scanner); return fDefaultToken; } } scanner.unread(); return Token.UNDEFINED; }