FParsec でメソッド引数パーサーを実装しようとしています。
FParsec 自体に、この目的に役立つ機能が既に実装されているかどうか疑問に思っていましたか? FParsec は演算子の優先順位を扱うときにツールを提供するため、これにも何かがあるかもしれません。
左中括弧と右中括弧の解析は非常に簡単です。頭痛の種は、発生する可能性のある次の 3 つのケースに対処することです。
メソッドの引数は次のもので構成できます。
- 引数なし、
- 一つの引数、
- いくつかの引数 (すべてカンマ区切り)。最後の引数の前にカンマを付けることはできないことに注意してください!
組み込み機能がない場合、つまり <|> 演算子とストリームコピーを使用して、これを自分で実装する方法については、すでにいくつかの手がかりがありますが、そのような低レベルのものから離れたいと思います可能。