問題タブ [dart-mirrors]

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

dynamic - Dartでランタイムタイプチェックを実行するにはどうすればよいですか?

ダート仕様は次のように述べています。

洗練された型情報は、実行時のオブジェクトの型を反映し、動的な型チェック構造(他の言語のinstanceOf、casts、typecaseなどの類似物)によって常に照会される場合があります。

素晴らしいように聞こえますが、同様のinstanceof演算子はありません。では、Dartでランタイムタイプチェックをどのように実行するのでしょうか?それは可能ですか?

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

dart - Dart のクラスでメソッドを動的に呼び出したり、インスタンス変数を設定したりする方法はありますか?

Dart クラス コンストラクターを使用して、次のようなことができるようにしたいと考えています。

thisメソッドがないため、明らかにこれは機能しません[]=

それを機能させる方法はありますか、それとも単に物事を行うための「ダーツな方法」ではありませんか? そうでない場合、これに取り組む正しい方法を教えていただけますか?

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

dart - Dart でクラス名 'InvocationMirror' を解決できません

Dart の を使用しようとしてきましたnoSuchMethod()が、このコードは

次のエラーが発生します。cannot resolve class name 'InvocationMirror' from 'MyClass'

InvocationMirror のようなクラスはないようです。それを持たない古いバージョンのダーツでしょうか?私が持っているのは、今日ダウンロードした SDK for Mac の安定版です。

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

dart - ミラー API を介して静的メソッドの具体的なオブジェクトを取得するには?

私はこのようなものを持っています:

リフレクションを介して、このクラスの ClassMirror を取得できます。この時点から、具体的な静的関数を呼び出すにはどうすればよいでしょうか。

私が使用しようとしたことに注意してください:

最初は機能するように見えますが、複雑な型を引数として渡すことはサポートされていません。この静的関数には、引数の 1 つとして複雑な型が必要です。

理想的には、静的メソッドを表す「関数」オブジェクトを取得して、直接呼び出すことができるようにしたいと考えています。

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

reflection - ミラーベースの反射と従来の反射の違いは何ですか?

Dart のような一部の言語はミラー ベースのリフレクションを使用します。簡単に言えば、C# や Java で見られるような実装と従来のリフレクションの違いは何ですか。

更新: Newspeak でミラーベースのリフレクションに関する Gilad Bracha による素晴らしい (そしてやや風変わりな) ビデオを見つけました。 http://www.hpi.uni-potsdam.de/hirschfeld/events/past/media/100105_Bracha_2010_LinguisticReflectionViaMirrors_HPI.mp4 (ミラー関連は 7:42 から開始)

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

mocking - dart - モック、名前で呼び出されるメソッド名、リファクタリングの失敗

説明されているように、dart unittest フレームワークと含まれている Mock クラスを使用しました

ただし、モック呼び出しには依存関係があります。

isLockedメソッドへの呼び出しは名前で呼び出されます。誰かがisLockedメソッドの名前を変更した場合、リファクタリング フレームワークは呼び出しの名前を変更しません。

リフレクション(鏡)が何かに役立つのではないかと思っていましたが、解決策が見つかりませんでした。

乾杯ピーター

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

dart - Dartでは、setterメソッドの生成された名前は何ですか?

セッターが定義されたクラスがある場合、そのクラスのインスタンスから関数として生成されたメソッドを参照するにはどうすればよいですか。スペックの種類は、それが変数+'= "(daftのようです)のIDであることを示唆していますが、これは解析されません。

したがって、たとえば:

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

dart - Dartのライブラリの下で静的ファイルを読んでいますか?

Dartでライブラリを作成していますが、ライブラリフォルダの下に静的ファイルがあります。それらのファイルを読み取れるようにしたいのですが、そのファイルへのパスを取得する方法がわかりません...他のいくつ__FILE__$0の言語にはありません。

更新:私は十分に明確ではなかったようです。これが私を理解するのに役立ちます:

test.dart

foo.dart

間違ったフォルダの場所が表示されます。+へのパスが表示されますが、test.dart+resources/へのパスが必要です。foo.dartresources/

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

class - オブジェクトがクラスのインスタンスかどうかを確認する方法

オブジェクトが Dart 言語のクラスであるかどうかを判断するにはどうすればよいですか?

私は次のようなことをしようとしています:

また、戻り値の型は何ですか? 文字列である必要がありますか?


ミラー ライブラリは浮き沈みがあり、現在急速に変化しているようです。

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

ruby - Rubyのinstance_variable_setメソッドに相当するものはDartにありますか?

そうでない場合、このようなものは地平線上にありますか?

これは、JavaScript、Ruby、Perlの機能の1つであり、これなしでは生きていけません。ハッシュメンバーで偽造できることは知っていますが、パーサーから(任意の)「ファーストクラス」メンバーを作成できるようにしたいと思います。