C のように、1 行と複数行のコメントを使用できます。
次のように、すべてのコメントを無視するためのレクサーのルールを記述する方法。
// comment /* nested comment /* and nested again? */ */
またはこれらのように:
/* comment // one more comment /* and more... */ */
更新:
ネストされたコメントを解析する有効なコードは次のとおりです ( Samに感謝します):
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 }