5

「コピー」がDictionaryクラスにどのように実装されているかを確認したいとします。現在、システムブラウザーを使用して、指定されたメッセージを実装するクラスが見つかるまで、継承階層を手動でトラバースします(ボトムアップ)。適切な場所でシステムブラウザを開く、ワークスペース用のワンライナーはありますか?

4

4 に答える 4

6
( SomeClass whichClassIncludesSelector: #initialize ) browse

これにより、メッセージ#initializeを実装するクラスが参照されます。

于 2012-02-29T06:42:35.877 に答える
6

個人的には、ワークスペースに#selectorと入力して強調表示し、alt+mを押してメッセージのすべての実装者を表示します。そのすべてのコードを入力するよりもはるかに高速です。

于 2012-02-29T16:40:10.183 に答える
2

(SomeClass >> #someSelector)参照

私のファロ画像でも同様に機能します。

私のファロ画像でも同様に機能します。そして、最初にクラスを見つけたいので、それを前の例と組み合わせることができます。

((SomeSubclass whichClassIncludesSelector:#someSelector)>> #someSelector)ブラウズ

指定されたメソッドに直接移動します。

于 2012-02-29T16:11:54.700 に答える
2

OmniBrowserを使用している場合は、コンテキストメニューの[階層の実装者... ]を使用して、の階層内のセレクターの実装者のみを参照できますDictionary

OmniBrowserは、継承ブラウザも提供します。の実装を選択し、ツールバー#copyのボタンをクリックします。Inheritanceのすべての実装者の階層ビューが表示されます#copy

于 2012-03-10T08:38:32.530 に答える