問題タブ [cqlinq]

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 投票する
0 に答える
139 参照

ndepend - NDepend 使用パス ホップでカスタム フィルターを使用してメソッドを間接的に使用するメソッドのクエリを作成する方法

NDepend に少し苦労しています。説明するのは少し難しいです。コードベースにメソッドがあり (そのメソッドを「TheMethod」と呼びます)、特定の種類の他のメソッド (この種類を「TheKind」と呼びましょう) によって呼び出されてはなりませんが、何らかの属性 (「TheAttr」 )、直接的または間接的に; 間接的な場合、「TheAttr」で装飾されたホップは、間接的な使用法に違反することはありません。

「使用」を意味する「->」矢印、「[TheAttr]」を含む TheAttr を持つ前述の属性を持つメソッド、およびルールに違反する必要がある場合は「FAIL」という単語、違反する場合は「SUCCESS」という単語を使用して、いくつかのシナリオを視覚化します。規則に違反してはなりません。

そう...

「TheMethod」を直接的または間接的に使用して、「TheKind」のすべてのメソッドをトリガーする CQLinq クエリを作成できます。「TheAttr」を持つメソッドを結果から除外することもできます。

間接的な用法をルールに組み込むのも簡単です。

今、私が欲しいのはこれです:

したがって、言い換えれば、装飾を持つ中間呼び出し元は、「TheMethod」の有効な使用法をもたらす必要があります/有効な使用法を「介して」呼び出すことも有効である必要があります。

これは NDepend で確認できますか? 私は FillIterative を試しましたが、今のところ運がありません。

ありがとう、ティム

PS .:これが私の現在の試みです:

0 投票する
0 に答える
56 参照

c# - メソッドの出現回数 NDepend

非同期メソッドのすべての await が ConfigureAwait(false) を使用しているかどうかをチェックする NDepend ルールを作成する必要があります。

メソッドが ConfigureAwait(Boolean) を使用しているかどうかを確認します。そのメソッドがそれを使用しない場合、ルールに違反しています。

すべての async メソッドが 1 つの await を使用していることが確実な場合、このコードは正常に機能します。しかし、メソッドが 2 つの await を使用する場合はどうなるでしょうか? 次に、そのメソッドで await のすべての発生をカウントできます。

フーとストーンはルールを破った。

私のコードでは、Foo がルールに違反していることがわかりますが、Stone はルールに違反していません。

「MethodsCalled」を使用すると、メソッドが ConfigureAwait() を使用しているかどうかを確認できます。これは便利です。しかし、繰り返しますが、await と ConfigureAwait() 'Stone' の発生回数を確認できません。