setter (プリミティブ)
パッケージ: CURL.LANGUAGE.COMPILER

シグネチャ

{setter [access] [modifier-list] {accessor-name arg-name:arg-type} [:void]
    code
}
access: はアクセス属性です。有効な属性は publiclibrarypackageprotected および private です。access を指定しない場合、アクセス属性は既定で package になります。アクセッサは通常 public です。
modifier-list: はオプションの修飾子リストです。セッターの有効な修飾子は abstractfinalsealedopeninline および deprecated です。複数の修飾子を指定する場合は、各修飾子をスペースで区切ります。
accessor-name: はアクセッサ名です。有効な Curl 識別子を作成するには、Curl メソッドの命名規則を使用します。小文字のみを使用してください。アクセッサ名に複数の単語が含まれる場合は、ハイフンで区切ります。ゲッターとセッターは同一名を持つことができます。
arg-name: は、セッターに対する引数の名前です。
arg-type: は、セッターに対する引数のデータ型です。
code: は、アクセッサのコードです。コードには変数と式の定義を含めることができます。

たとえば、次のコードは _my-field というフィールド、ならびに my-field というゲッターとセッターを示します。このフィールドはプライベートなので、クラス内のコードのみがフィールドにアクセスできます。セッターはパブリックなので、すべてのコードがセッターにアクセスできます。セッターは、1 つの引数 (フィールドを設定する値) を受け取ります。引数の名前は何でも構いません (フィールド名と同じである必要はありません)。セッターは値を返しません。戻り値は、省略されるか void を明示的に宣言されます。セッターがゲッターと同じ名前を持つことに注意してください。

|| A private int field that is initialized to 9.
field private _my-field:int = 9

|| A getter for my-field.
{getter public {my-field}:int
    {return self._my-field}
}

|| A setter for my-field.
{setter public {my-field _my-field:int}
    set self._my-field = _my-field
}