Что касается комментария @Mike Lischke о том, что, к сожалению, поддержка Unicode была не просто свернута в существующий ANTLRInputStream, а не создала новый класс CharStreams (и нарушил существующий код, хотя (возможно? Обычно?) "Легко-fix манера ": Может ли быть так, что какой-то код записывается для ANTLRInputStream в зависимости от того, что это поток не в Юникоде (например, только 8 или 16-битные символы)?
Я новичок в ANTLR (и выбираю ржавыйЯва снова после изучения 10 лет назад в классе CS.), Поэтому я не знаю, насколько была неполная поддержка Unicode для ANTLRInputStream.
«Не меняйте старое»интерфейс для складывания в новом поведении, просто создать новый ", что напоминает мне Apple Swift (и их API-интерфейсы Cocoa / iOS / и т.д.), который, кажется, находится в постоянном состоянии потока совместимости с исходным кодом.