2017-04-13 4 views
1

プロジェクトでantlr4 JavaScriptランタイムを使用して、カスタムブール検索言語を解析しています。私はいくつかのより複雑なクエリが解析するのがかなり遅いことに気付きました。私は解決策を探しました。antlr4のJavaScriptランタイムでPredictionMode.SSLを設定するには

Javaドキュメントはかなり良いです、そして通常はJavaScriptランタイムは、Javaが行うほとんどすべてを行いますので、私はこのgithubの問題では良いオプションのように見える解決策が見つかりました:それは2を示唆https://github.com/antlr/antlr4/issues/192

を最初にエラー戦略をBailErrorStrategyに設定し、PredictionMode.SLLを使用して、エラーの場合にはおよびPredictionMode.LLにフォールバックします。

私の質問はこれです:JavaScriptランタイムを使用してPredictionModeを設定するにはどうすればよいですか?私はnpmからantlr4バージョン4.6.0を使用していますが、ParserATNSimulaterはJavaドキュメントのようにsetPredictionModeメソッドを持っていないようです。どんな助けもありがとう!

答えて

0

ソースコードを見ると、ParserATNSimulator(this.predictionMode、行272)にパブリックプロパティがあります。それはそうするべきですよね?

+0

ありがとう、これはトリックを行う必要があります。もしそうでなければ、antlr4tsはその方法を持っているようです。 – rozza2058

+0

とにかくantlr4tsをお勧めします(最初のアルファからそれを使用しています)。私のためにはうまく動作し、ノードモジュールの作成にも適しています。 –

関連する問題