3
parboiled2(私はv 2.1.4を使用しています)のパーサーアクションでエラーを報告する最善の方法は何ですか?parboiled2では、パーサーアクションでエラーをどのように報告しますか?
例えば、整数値を読み込み、予想された範囲内にない場合にエラーを報告したいとしますか? fail
を呼び出そうとしましたが、パーサーアクション内では有効ではありません。また、私はtest
ルールにスタック値をどのように提供すべきかを知ることができません。 ParseError
例外を投げるだけですか?あなたはそのためtest
を使用することができます
def Index = rule {
capture(oneOrMore(CharPredicate.Digit)) ~> {s => // s is a String
val i = s.toInt
if(i > SomeMaxIndexValue) ??? // What do I put here?
else i
}
}
ワウ!それはかなりきれいです!好奇心の外に、結果の解析エラーを説明するためにテキストを追加するにはどうすればよいですか? –
手がかりではありません。長い間使っていない。 –