in lib/src/scanner.dart [68:94]
Token _readNext() {
if (_endOfFileEmitted) throw StateError('No more tokens.');
_consumeWhitespace();
if (_scanner.isDone) {
return Token(TokenType.endOfFile, _scanner.spanFrom(_scanner.state));
}
switch (_scanner.peekChar()) {
case 0x28 /* ( */ :
return _scanOperator(TokenType.leftParen);
case 0x29 /* ) */ :
return _scanOperator(TokenType.rightParen);
case 0x3F /* ? */ :
return _scanOperator(TokenType.questionMark);
case 0x3A /* : */ :
return _scanOperator(TokenType.colon);
case 0x21 /* ! */ :
return _scanOperator(TokenType.not);
case 0x7C /* | */ :
return _scanOr();
case 0x26 /* & */ :
return _scanAnd();
default:
return _scanIdentifier();
}
}