セッタ定義
セッタ定義
セッタは代入文の形式で呼び出されるサブルーチンである。
セッタ定義は以下の形式である。
アクセス制御 setter セッタ名(引数)
文
endsetter
endsetterの代わりに省略形のesを使用できる。
クラス定義の中で他のメンバ定義の外であれば、任意の場所でセッタの定義が可能である。
セッタの主な目的はフィールドに対するアクセス手段の提供である。
アクセス制御
アクセス制御は、openかclosedのどちらかのキーワードを指定して、セッタのアクセスレベルを決定する。
openなら公開であり、クラス定義の外部から呼び出せる。closedなら非公開であり、クラス定義の中でしか使えない。
setter
setterはこの定義がフィッタであることを示すキーワードである。アクセス制御とセッタ名の間に存在しなければならない。
セッタ名
セッタ名には識別子と組み込みクラスの名前を使うことが出来る。
引数
引数は括弧で囲まれた一組のクラス名と識別子である。
文
文は任意である。つまり、文が無いセッタが許される。
endsetter
endsetterは定義の終了を示すキーワードである。endsetterの代わりに省略形のesを使用できる。
オーバーロード
引数のクラスが異なれば同じ名前のセッタが定義可能である。
スコープ
セッタはスコープを生成する。
復帰
return文により、どこからでも呼び出し元に復帰出来る。セッタのreturn文はインスタンスを返してはいけない。return文に出会わずにendsetterまで到達した場合は、呼び出し元に復帰する。