PHPStormがコードの完了からいくつかのメソッドを隠すようにする方法を探しています。DocBlockに注釈を付けようとしましたが、それによってDocBlock@access private
が表示されなくなります。
限られたインターフェースでスタブファイルを作成/生成し、それをプロジェクトで参照する以外に、プライベートAPIを非表示にする方法はありますか?
例えば:
ライブラリにこれが含まれているとしましょう。
<?php
interface IDoABunchOfStuff
{
/**
* My library users use this
*/
public function doFoo();
/**
* My Library needs this but requires that my users don't see it.
*
* @access private
* @visibility none
* @package mylib
* @internal
*/
public function doBar();
}
class Foo extends Something implements IDoABunchOfStuff
{
/**
* does foo
*/
public function doFoo()
{
// ...
}
/**
* does bar. for internal use only
*
* @access private
* @visibility none
* @package mylib
* @internal
*/
public function _doBar()
{
// ...
}
}
そして、私の図書館のユーザーは次のように入力しています。
<?php
myAwesomeFunction(IDoABunchOfStuff $aFoo)
{
if($->$oFoo->[CTRL+SPACE] // invoking code completion...
ユーザーに表示されないようにすることは可能ですか(その場合はどうすればよいですか)_doBar
。
私が試したさまざまな注釈のどちらも、望ましい効果をもたらさないようです。
PS私はPHPStorm4.0.3を使用しています
追加:
この場合、私はArrayAccessを実装しており、offsetGet、offsetSet、offsetExists、offsetUnsetがコード完了ウィンドウを乱雑にしたくないのですが、他の場所でも同様の問題が発生しており、より一般的な質問をする必要があります。