Как я могу проанализировать блоки комментариев строки с MGrammar?
Я хочу проанализировать блоки комментариев строки.Строковые комментарии, которые рядом с каждым, должны быть сгруппированы в выводе MGraph.
У меня проблемы с группировкой блоков строчных комментариев вместе.Моя текущая грамматика использует «\ r \ n \ r \ n» для завершения блока, но это не будет работать во всех случаях, например, в конце файла или когда я ввожу другие синтаксисы.
Пример ввода может выглядеть следующим образом:
/// This is block
/// number one
/// This is block
/// number two
Моя текущая грамматика выглядит следующим образом:
module MyModule
{
language MyLanguage
{
syntax Main = CommentLineBlock*;
token CommentContent = !(
'\u000A' // New Line
|'\u000D' // Carriage Return
|'\u0085' // Next Line
|'\u2028' // Line Separator
|'\u2029' // Paragraph Separator
);
token CommentLine = "///" c:CommentContent* => c;
syntax CommentLineBlock = (CommentLine)+ "\r\n\r\n";
interleave Whitespace = " " | "\r" | "\n";
}
}