問題タブ [reflection]
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.
.net - .NETソリューションから「依存関係ツリー図」を作成するにはどうすればよいですか。
Visual Studio .NETプロジェクト内から、単一のプロジェクトがどのプロジェクトとdllを参照しているかを簡単に確認できます。
依存関係のグラフをプロットするために使用できる完全な依存関係ツリーを構築できるアプリケーションまたはリフレクションの使用法はありますか?
javascript - JavaScript 関数が定義されているかどうかを確認する方法
JavaScript の関数が定義されているかどうかはどうやってわかりますか?
私はこのようなことをしたい
しかし、それは私を取得します
コールバックは関数ではありません
コールバックが定義されていない場合のエラー。
c++ - C++ の属性 & リフレクション ライブラリ?
ほとんどの成熟した C++ プロジェクトは、独自のリフレクションと属性システムを持っているようです。つまり、文字列でアクセスでき、自動的にシリアル化できる属性を定義するためのものです。私が参加した少なくとも多くの C++ プロジェクトは、車輪の再発明のように見えました。
リフレクションと属性コンテナーをサポートする、C++ 用の優れたオープン ソース ライブラリを知っていますか。具体的には次のとおりです。
- マクロによる RTTI と属性の定義
- コードによる RTTI と属性へのアクセス
- 属性の自動シリアル化
- 属性の変更をリッスンする (例: OnValueChanged)
.net - PHP var_dumpに相当する.NETとは何ですか?
ToString()
少し前に、Reflection名前空間に、オブジェクトのすべてのプロパティで再帰的に実行され、表示用に適切にフォーマットされる メソッドがあることを覚えています。
はい、デバッガーを介して必要なものすべてにアクセスできることはわかっていますが、誰かがそのコマンドを知っているかどうか疑問に思っていますか?
.net - ArgumentExceptionを構築するときにパラメータ名をプログラムで決定する方法は?
ArgumentException を作成するときに、いくつかのオーバーロードが、無効な引数のパラメーター名である文字列を取ります。メソッドのパラメーター名を変更するたびに、この ctor パラメーターを更新することを覚えておく必要がないのはいいことだと思います。リフレクションを使用してこれを行う簡単な方法はありますか?
更新:これまでに 2 人の回答者に感謝します。あなたは両方とも質問によく答えますが、解決策はまだメンテナンスの頭痛の種です。(わかりました、ちょっとした頭痛ですが、それでも...)説明すると、後でパラメーターを並べ替える場合、または以前のパラメーターを削除する場合、例外構築コードを再度変更することを忘れないでください。の線に沿って何かを使用できる方法はありますか
関連するパラメータを扱っていることを確認するには?そうすれば、コンパイラが介入して、私が例外をひどく構築するのを防ぎます。
とは言っても、元の質問の「単純な」部分はそうではないのではないかと疑い始めています。たぶん、文字列リテラルの使用に我慢する必要があります。:)
c# - Reflection でプライベート フィールドを見つけますか?
このクラスを考えると
属性でマークするプライベート アイテム _bar を見つけたいです。それは可能ですか?
私は属性を探したプロパティでこれを行いましたが、プライベートメンバーフィールドはありませんでした。
プライベート フィールドを取得するために設定する必要があるバインディング フラグは何ですか?
.net - アクセス修飾子はリフレクションにも影響しますか?
私はいつも彼らがそうだと信じていましたが、ここでいくつかの答えを見ると疑わしくなります...
リフレクションを介してクラス外からプライベート フィールド/プロパティ/メソッドにアクセスできますか?
c# - 型パラメーターが c# 2.0 でインターフェイスを実装しているかどうかを知る簡単な方法は何ですか?
たとえば、 type param メソッドが与えられた場合、太字の部分のようなものを探しています
void MyMethod< T >() {
if ( typeof(T).Implements( IMyInterface ) ) {そうしないと
}
C# 3.0 を使用した回答も歓迎しますが、最初に .NET 2.0 を削除してください ;)
.net - アセンブリのルート名前空間を取得するにはどうすればよいですか?
のインスタンスが与えられますSystem.Reflection.Assembly
。
c# - リフレクション/診断を介してメソッド内から呼び出しインスタンスを取得できますか?
System.Reflection、System.Diagnostics、またはその他を介して、メソッド自体に渡さずに静的メソッドを呼び出している実際のインスタンスへの参照を取得する方法はありますか?
たとえば、これらの線に沿ったもの
System.Diagnostics.StackTrace.GetFramesを使用して型を取得できますが、実際のインスタンスへの参照を取得する方法はありますか?
私は、リフレクションとパフォーマンスの問題、および静的呼び出しから静的呼び出しの問題を認識しており、これは一般的に、おそらくほぼ例外なく、これにアプローチする正しい方法ではないことを認識しています。この質問の理由の一部は、それが実行可能かどうかに興味があったことです。現在、インスタンスを渡しています。
そして、これが可能で、まだインスタンスにアクセスできるかどうか疑問に思いました.
@Steve Cooper: 拡張メソッドは考えていませんでした。そのいくつかのバリエーションが機能する可能性があります。