Доступны однострочные и многострочные комментарии, как в C.
Как описать правила для лексера, чтобы игнорировать все комментарии, даже вложенные, такие как эти:
// comment /* nested comment /* and nested again? */ */
или как это:
/* comment // one more comment /* and more... */ */
UPD:
Вот правильный код для анализа вложенных комментариев (спасибо Сэм ):
rule token = parse
| "/*" { comments 0 lexbuf }
| [' ' '\t' '\n'] { token lexbuf }
| eof { raise End_of_file }
and comments level = parse
| "*/" {
if level = 0 then token lexbuf
else comments (level-1) lexbuf
}
| "/*" { comments (level+1) lexbuf }
| _ { comments level lexbuf }