На входе токены Scanner.ident (последовательность букв) и Scanner.number (последовательность цифр). На выходе токены ScanNumber.hexNumber, ScanNumber.hexChar, ScanNumber.realNumber, ScanNumber.longRealNumber либо ScanNumber.error. Глобальной переменной нет, а идёт преобразование потока токенов от простых к сложным. Соответственно, токены не только могут заменяться, но и их количество на выходе может быть меньше, чем на входе. На самом первом уровне приходят отдельные символы, на последнем - распознанные неделимые сущности. Например, строковые константы, блоки комментариев, цепочки пробелов и т.п. - всё то, внутреннее устройство чего не имеет значения для дальнейшей обработки.

Если после уровня ScanNumber в потоке остался токен Scanner.number, то это может быть только обычное десятичное число без всяких модификаторов. Таким образом, состояние сканера максимально локализовано.> -- igor писал(а):
> Получается, что такой лексемы как символьная константа вообще как бы нет.Получается, что у меня такие лексемы есть? Интересно, какие это может повлечь последствия?