揮発性のメモ2

http://d.hatena.ne.jp/iww/

eclipseでメンバ変数も補完できるようにする

Eclipseで変数名の補完とかする方法がとりあえず判明してきたので 今できてる分だけまとめる


そもそもとして、javadocではなく、phpdocなので、javadocの便利タグはほとんど使えない。

<?
/**
 * クラス名
 *
 * クラスの説明
 */
class Kurasu_Sugoi extends Kurasu_Futsu
{
    /**
     * メンバ変数名
     *
     * メンバ変数の説明
     * @var Betsu_Kurasu
     */
    public $menba;

    /**
     * @var Betsu_Kurasu */
    public $menba2;

    /** メンバ変数名 */
    public $menba3;


    /**
     * 関数名
     *
     * 関数の説明
     * @param   $arg1               引数名
     * @param   Betsu_Kurasu $arg2  引数名
     * @return  Betsu_Kurasu 戻り値の説明
     */
    function kansu( $arg1, Betsu_Kurasu $arg2 )
    {
        /* @var  $localhensu  Hokano_Kurasu */
        $localhensu = $arg2->hoge();

        return $arg1 . $localhensu;
    }
}
  • コメントの書き方は /** */ のみ利用可能。
    /// は利用不可。
  • 変数の後ろに書く方法、 /**< */ とか ///< といった書き方はできない。
  • 関数の引数のアノテーションで型も書ける。
    ヒンティングでも認識されるので好きな方を使う。
    入出力の指定([in], [out]等)は使用できない。
  • 関数の戻り値は @return だけ使える。
    @retval の方は使えない。
    また、戻り値に string|null のように複数のパターンを書ける。(クラスならどちらも補完されるようになる)
  • メンバー変数は @var 型 と書く。 変数名は書かない。
    /** は単独の行にする。
    型の後ろに追加の説明を書いても問題ない
  • メンバ変数の変数名だけでよければ1行で書いてもいい
  • ローカル変数は/* @var 変数名 型 */ と書く。
    Eclipseの時に限り、/** ではな /* しか受け付けないので注意する。
    型の後ろに追加の説明など余計なものを書くと認識されなくなるので書いてはいけない
    newなどしている場合は別にアノテーションを書かなくても補完される
  • 変数の型に self は使用できない。 phpDocを完全に網羅しているわけではない
    • 戻り値の型に self は使用できる


参照