Grammar-Kit: как обращаться с токенами комментариев

Из документации, предоставленной для набора грамматик, я не могу понять, как я должен правильно обрабатывать что-то вроде комментариев. В настоящее время мой лексер возвращает TokenType.WHITE_SPACE для любых блоков комментариев, но тогда для меня не создается уникального IElementType для подсветки синтаксиса.

Если я создам IElementType и скажу flex вернуть его для комментариев, я смогу выполнить подсветку синтаксиса, но тогда этот токен не будет частью моей языковой спецификации в BNF, и поэтому он будет считаться недействительным.

Каков правильный способ передать комментарии как пробел, но выполнить подсветку синтаксиса для них в Intellij/grammar-kit/jflex?


person FatalCatharsis    schedule 19.05.2017    source источник


Ответы (1)


Вы можете использовать реализацию Grammar-Kit в качестве эталона:

  1. лексер
  2. Грамматика
  3. ParserDefinition

Использование TokenType.WHITE_SPACE для комментариев — плохая идея.

Более подробную информацию можно найти здесь.

person CrazyCoder    schedule 19.05.2017