問題タブ [expression-trees]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
5 に答える
352 参照

math - 数学ゲームで式パーサーを使用する必要がありますか?

クラス用に子供向けの数学教育ソフトウェアを作成しています。

さまざまなスキル レベルの生徒に、ランダムに生成されたさまざまな種類の数学の問題を楽しく提示してみます。

コンピュータベースの数学ソフトウェアを使用する際のフラストレーションの 1 つは、その硬直性です。誰かがオンラインの数学クラスを受講したことがあるなら、オンラインのクイズを受けて、問題がフォームに正確にフォーマットされていなかったり、奇妙なスペースの問題があったりして、正しい答えが捨てられてしまうことのフラストレーションをすべて知っているでしょう。

だから、最初は「わかった!回答ボックスに式パーサーを使用して、入力されたものを評価できるようにし、同じ形式でなくても確認できるようにする」と考えていました。同じ答えなら。」そこで、IDE を起動して、Shunting Yard Algorithm の実装を開始します。

これにより、最小の形で分数をとらないという問題やその他の問題が解決されます。

しかし、トリッキーな学生がほとんどの問題を回答ボックスに入力するだけで、式パーサーがそれを忠実に解析して正しい回答に評価することに気づきました。

では、この場合、式パーサーを使用すべきではありませんか? 単一の形式の回答を生成し、文字列の比較を行う必要がありますか?

0 投票する
5 に答える
23365 参照

c# - 式を動的に作成する方法>述語?

式ツリーを使用して、次のような述語を動的に作成するにはどうすればよいですか...

そのように述語をラムダ式に貼り付けることができるように...

私はただ正しい方向に向けられる必要があります。

更新:申し訳ありませんが、上記のように述語に複数の条件を持たせたいという事実を省略しました。混乱させて申し訳ありません。

0 投票する
3 に答える
1911 参照

linq - プログラムで SQL クエリを Linq 式に戻す

プログラムでSQLクエリをlinq式ツリーに変換することは可能ですか? sql クエリはこの linq クエリによって生成されるはずなので、貧乏人の linq クエリの t-sql 形式へのシリアライゼーション\デシリアライゼーションと考えています。

ありがとうございました。

0 投票する
2 に答える
4686 参照

c# - 式と述語の問題

ユーザーによるクエリ入力を表す式ツリーを作成する必要があるという、ちょっとした課題があります。ユーザー入力の考えられるすべてのケースを作成する時間がないため、式ツリーがこれを解決するのに役立つと考えました。

ほとんどの場合、それはあります。しかし、私は少し困惑しています。以下のコードでは、動的に作成された式で List.Find を実行しようとしています。式は、要するに次のとおりです。

m はどこですか

作成するまでになりました

式で、問題ありません。Exists の methodinfo も宣言しました

私が抱えている唯一の問題は、ラムダをパラメーターとして使用して上記のメソッドを呼び出す式を作成することです

それは理解できる例外を与えます

どうすればこれを克服できますか?

完全なコード:

0 投票する
1 に答える
2428 参照

c# - メソッドを呼び出す LINQ 式を作成するにはどうすればよいですか?

私はDLRを少しいじっていて、メソッドの呼び出しに少しこだわっています。たとえば、何かをスタックにプッシュする式を作成したいとします。

_stack または item から Expression を取得する方法がよくわからないため、行き詰まっています。誰かが私を正しい方向に押してくれませんか?

0 投票する
4 に答える
1247 参照

.net - 変換とボックス化解除の違いは何ですか?

DLR の LINQ 式では、次の違いは何ですか:

この:

これに関するドキュメントは少し大ざっぱなようです。

さらに、この C# コードに相当するものは次のどれですか。

ClassB には、ClassA にキャストするための暗黙的または明示的な演算子がありますか?

0 投票する
4 に答える
2687 参照

c# - C#でカスタムSystem.Linq.Expressionクラスを作成するにはどうすればよいですか?

カスタム式クラスを作成することは可能ですか?もしそうなら、誰かが何か例がありますか?フレームワークの抽象式クラスから継承すると、そのコンストラクターがフレームワークの列挙型であるExpressionTypeパラメーターを受け取るという問題が発生します。これは明らかにカスタマイズできません。

何か案は?

0 投票する
2 に答える
600 参照

c# - 式ツリーの変更の問題

私は次のものを持っています:

パラメータを削除し、最初のメンバーをサブ式のパラメータにしたいので、最終的には次のようになります。

これは、 を含む上記の形式の任意の式ツリーMemberExpression、およびプロパティを持つMethodCallExpressionその他の任意の式ツリーで機能する必要があります。例えば:Expression.Expression

また

どうすればこれをエレガントに達成できますか?

ありがとう

アンドリュー

0 投票する
3 に答える
1168 参照

.net - ツリーデータ構造を解析する方法は?

式ツリーに解析する必要があるノードで構成されるツリー データ構造があります。私のノードは次のようになります(簡略化):

ツリーの最下部を見つけて逆方向に作業して式ツリーを構築するための最良/正しい方法は何ですか? 左または右のどちらを最初に解析しますか?