2016-05-20 2 views
0

В Antlr4 грамматики, у меня есть правило, которое выглядит какКонсерванты в пробелы оригинального текста

a : 
    b 
    { 
     System.out.println($b.text); 
    } 
    ; 

В выводе я замечаю, что пробелы отсутствуют ..

Пример Входной сигнал: int a = 5 ; Выход :
inta=5;

В грамматике у меня также есть правило

ws: [ \t\n] -> skip; 

Как сохранить пробелы? (Grammar большой .. поэтому я не могу разделить его здесь)

ответ

0

Я нашел ответ сам ..в случае, если кто нуждается,

просто заменить

ws: [ \t\n] -> skip; 

с

ws: [ \t\n] -> channel(HIDDEN); 

Редактировать: Не уверен, что это работает в старых версиях antlr. Это, безусловно, работает в Antlr4

Смежные вопросы