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

シグネチャ

{method [access] [modifier-list] {method-name [arg-list]}:[return-types]
    code-body
}
access: アクセス属性です。有効な属性は publiclibrarypackageprotected および privateです。access を指定しない場合のアクセス属性の既定値は、package になります。
modifier-list: オプションの修飾子リストです。メソッドの有効な修飾子は、abstractinlinefinalsealedopen、および deprecatedです。複数の修飾子を指定する場合は、空白で修飾子を区切ります。
method-name: メソッドの名前。Curl メソッドの命名規則に従って、有効な Curl 識別子を作成することを推奨します。名前には小文字のみ使用します。メソッド名に複数の単語が含まれる場合は、ハイフンで単語間を区切ります。
arg-list: メソッドの引数のリスト。リストされた引数または残余引数を指定できます。指定可能な引数のフォーマットは、位置フォーマットまたはキーワード フォーマットです。引数の指定はカンマで区切ります。
return-types: メソッドに対する戻り値のデータ型。メソッドは、1 つ以上の値を返します。return-type を指定しなかった場合、any 型の戻り値を 1 つ指定したものと見なされます。
code-body: メソッドの本体。code-body コード ブロック。コード ブロックは、1 つ以上の Curl 式で構成されます (return 式が含まれることもあります)。このメソッドから 1 つ以上の値が返されるように定義するには、コード本体の中に必ず return 式を記述する必要があります。コード本体に return 式が存在する場合、Curl は return 式の値をメソッドの呼び出している式に返します。

説明

メソッドの詳細については、『開発者ガイド』の「メソッド」のセクションを参照してください。

たとえば、以下のコードを define-class 内に記述すると、値を返さない (void) my-method という名前のメソッドが作成されます。このメソッドは、arg という名前のデータ型 any の引数を 1 つとります。このメソッドはパブリック メソッドで、修飾子はありません。

{method public {my-method arg:any}:void
    || body of method
}


以下のコードは、2 つの整数値を返す my-method という名前のメソッドを作成します。このメソッドは、arg という名前のデータ型 any の引数を 1 つとります。このメソッドはパブリック メソッドで、修飾子はありません。

{method public {my-method arg:any}:(int, int)
    || body of method
    {return my-int-1, my-int-2}
}