リファレンスの読み方
リファレンスは次の単位で分割されています:
それぞれのページ構成は以下の節を参照してください。
モジュール
モジュールはクラスや関数などの機能を定義したファイルを指します。
モジュールの解説ページは以下の要素で構成されています:
-
モジュール名
モジュールの名前です。
モジュールの提供する機能の名前や、モジュールファイルのファイル名などが使われます。 クラス名と重複する名前については、「~モジュール」と接尾語をつけて区別しています。
-
モジュールファイルのパス
モジュールファイルのパスを示します。 このパスはモジュールをインポートして使用する際に利用されます。
-
概要
モジュールの提供する機能の概要やモジュールの使い方などを説明する文章です。
特定のトピックに関する話題が小項目として含まれることがあります。
-
機能一覧
モジュールが提供するクラス、関数、定数へのリンクと概要の説明です。
例
クラス
クラスの解説ページは以下の要素で構成されています:
-
クラス名
説明するクラスの名前です。 これは実際のプログラムにおけるクラス名と同じ名前です。
-
継承関係の図
特定のクラスから派生したクラスに関しては、継承関係を示した図が掲載されています。
-
概要
クラスの概要です。 クラスの使い方やモジュールの中での位置づけなどを説明する文章です。
特定のトピックに関する話題が小項目として含まれることがあります。
-
コンストラクタの説明
コンストラクタが公開されていて、何らかの引数を要求するものに関しては、コンストラクタの説明が記載されています。
コンストラクタの説明は他の関数のリファレンスページと同様に以下の項目を持ちます:
-
構文
コンストラクタの呼び出し方を説明する節です。 通常の関数と基本的な構成は同じですが、返値に関しては明らかであるため省略しています。
引数や例外に関する説明を含む、以下の要素で構成されています:
-
呼び出し形式の例示
以下のように、コンストラクタの呼び出し形式をコードブロックで例示しています。 複数の呼び出し形式があり得る場合、複数の行に分けて記載しています。
new クラス名(必須の引数名1, 必須の引数名2) new クラス名(必須の引数名1, 必須の引数名2, 省略可能な引数名1, 省略可能な引数名2) new クラス名({ 必須のプロパティ名1, 必須のプロパティ名2, 省略可能なプロパティ名1, 省略可能なプロパティ名2 })
クラス名(必須の引数名1, 必須の引数名2) クラス名(必須の引数名1, 必須の引数名2, 省略可能な引数名1, 省略可能な引数名2)
クラス名(必須の引数ラベル名1, 必須の引数ラベル名2) クラス名(必須の引数ラベル名1, 必須の引数ラベル名2, 省略可能な引数ラベル名1, 省略可能な引数ラベル名2) try 例外を発生させるコンストラクタを持つクラス名(必須の引数ラベル名1, 必須の引数ラベル名2, 省略可能な引数ラベル名1, 省略可能な引数ラベル名2)
詳細は関数・メソッドの解説ページの構成を参照してください。 通常の関数と異なる点は、返値の型が記載されていないことです。
-
引数
コンストラクタの引数の一覧です。
詳細は関数・メソッドの解説ページの構成を参照してください。
-
例外
コンストラクタ呼び出しの際に発生する例外の一覧です。
詳細は関数・メソッドの解説ページの構成を参照してください。
-
-
例
アプリケーションでの利用例を示しています。
例示されるコードは必ずしも実行可能な形式ではなく、モジュールのインポートなどのボイラープレートや実装の詳細については、便宜のために省略されていることがあります。
この項目は省略されていることがあります。
-
解説
コンストラクタの動作の詳細を解説しています。
-
-
メソッド一覧
クラスが備えるメソッドの一覧です。 インスタンスメソッドとクラスメソッド(静的メソッド)はともにこちらに記載しています。
メソッド一覧は以下の要素からなります:
-
メソッド名
メソッド名は見出しもなっており、目次から参照できます。
-
メソッドの解説ページへのリンク
このリンクはメソッド名に対して埋め込まれます。
-
メソッドの概要
メソッドの機能の説明です。 メソッド名に続いて記述されます。
-
-
プロパティ一覧
クラスのインスタンスが持つプロパティ(フィールド)の解説の一覧です。
各プロパティの解説は以下の要素からなります:
-
プロパティ名
プロパティ名は見出しもなっており、目次から参照できます。
-
プロパティの概要
プロパティの機能の説明です。 プロパティ名に続いて記述されます。
-
プロパティの型
プロパティのデータ型を示します。
-
例
関数・メソッド
関数およびメソッドの解説ページは以下の要素で構成されています:
-
関数名またはメソッド名
関数名またはメソッド名です。 メソッド名はクラス名を伴って「クラス名: メソッド名」のように記載されます。
-
概要
関数またはメソッドの概要です。
-
構文
関数またはメソッドの呼び出し方を説明する節です。
引数や例外に関する説明を含む、以下の要素で構成されています:
-
呼び出し形式の例示
以下のように、関数またはメソッドの呼び出し形式をコードブロックで例示しています。 複数の呼び出し形式があり得る場合、複数の行に分けて記載しています。
クラス名.メソッド名(必須の引数名1, 必須の引数名2) => 返値の型名 クラス名.メソッド名(必須の引数名1, 必須の引数名2, 省略可能な引数名1, 省略可能な引数名2) => 返値の型名 クラス名.メソッド名({ 必須のプロパティ名1, 必須のプロパティ名2, 省略可能なプロパティ名1, 省略可能なプロパティ名2 }) => 返値の型名
クラス名.メソッド名(必須の引数名1, 必須の引数名2): 返値の型名 クラス名.メソッド名(必須の引数名1, 必須の引数名2, 省略可能な引数名1, 省略可能な引数名2): 返値の型名 suspend クラス名.中断可能なメソッド名(必須の引数名1, 必須の引数名2, 省略可能な引数名1, 省略可能な引数名2): 返値の型名
クラス名.メソッド名(必須の引数ラベル名1, 必須の引数ラベル名2) -> 返値の型名 クラス名.メソッド名(必須の引数ラベル名1, 必須の引数ラベル名2, 省略可能な引数ラベル名1, 省略可能な引数ラベル名2) -> 返値の型名 try クラス名.例外の発生するメソッド名(必須の引数ラベル名1, 必須の引数ラベル名2, 省略可能な引数ラベル名1, 省略可能な引数ラベル名2) -> 返値の型名 await クラス名.非同期メソッド名(必須の引数ラベル名1, 必須の引数ラベル名2, 省略可能な引数ラベル名1, 省略可能な引数ラベル名2) -> 返値の型名 try await クラス名.例外の発生する非同期メソッド名(必須の引数ラベル名1, 必須の引数ラベル名2, 省略可能な引数ラベル名1, 省略可能な引数ラベル名2) -> 返値の型名
関数名(必須の引数名1, 必須の引数名2) => 返値の型名 関数名(必須の引数名1, 必須の引数名2, 省略可能な引数名1, 省略可能な引数名2) => 返値の型名 関数名({ 必須のプロパティ名1, 必須のプロパティ名2, 省略可能なプロパティ名1, 省略可能なプロパティ名2 }) => 返値の型名
関数名(必須の引数名1, 必須の引数名2): 返値の型名 関数名(必須の引数名1, 必須の引数名2, 省略可能な引数名1, 省略可能な引数名2): 返値の型名 suspend 中断可能な関数名(必須の引数名1, 必須の引数名2, 省略可能な引数名1, 省略可能な引数名2): 返値の型名
関数名(必須の引数ラベル名1, 必須の引数ラベル名2) -> 返値の型名 関数名(必須の引数ラベル名1, 必須の引数ラベル名2, 省略可能な引数ラベル名1, 省略可能な引数ラベル名2) -> 返値の型名 try 例外の発生する関数名(必須の引数ラベル名1, 必須の引数ラベル名2, 省略可能な引数ラベル名1, 省略可能な引数ラベル名2) -> 返値の型名 await 非同期関数名(必須の引数ラベル名1, 必須の引数ラベル名2, 省略可能な引数ラベル名1, 省略可能な引数ラベル名2) -> 返値の型名 try await 例外の発生する非同期関数名(必須の引数ラベル名1, 必須の引数ラベル名2, 省略可能な引数ラベル名1, 省略可能な引数ラベル名2) -> 返値の型名
それぞれの呼び出し形式の例示は、関数定義ではなく、実際の関数呼び出しに近いかたちで記述され、引数型や返値の型などは省略されます。
引数名は後述される引数の説明に使われるものと一致しています。
JavaScriptでは、単一のオブジェクトを引数に取る関数が数多くあります。 引数のオブジェクトのプロパティとして指定できるものが決まっている場合、波括弧(
{}
)で囲まれたプロパティ名のリストとしてそれを示しています。Kotlinでは中断可能な関数・メソッドに対して、呼び出し側で特別な記述は必要ありませんが、区別のため、呼び出し形式の説明では先頭に
suspend
キーワードをつけています。Swiftでは引数名と引数ラベル名が別々に定義されますが、ラベル名が省略可能なものを除き、リファレンスページ上ではラベル名を記載しています。 省略可能な引数に関しては代わりに、引数名を記載しています。
また、例外を発生させる関数・メソッドについては、先頭に
try
キーワードをつけています。 同様に、非同期の関数・メソッドについては、先頭にawait
キーワードをつけています。 例外を発生させる非同期の関数・メソッドについては、try await
キーワードをつけています。 -
引数
関数・メソッドの引数の一覧です。
引数のない関数やメソッドについては、この項目は記載されません。
それぞれの引数の説明は以下の要素で構成されています:
-
引数名
:型1
|型2
| ...引数名とそのデータ型の組を示します。 省略可能な引数に関しては、データ型の後ろに「(省略可)」と記載しています。
引数名の部分には、引数のオブジェクトのプロパティ名や引数ラベル名も含まれます。
縦線(
|
)で区切られたデータ型のリストは、その引数がリスト中のいずれか一つのデータ型の値を持つことを示します。 例えば文字列か数値を受け取る場合、そのデータ型はstring
|number
と表されます(順不同;number
|string
と書かれていても意味は同じです)。JavaScriptでは、引数がプレーンオブジェクトである場合、その型は
object
と記述されます。 また、プレーンオブジェクトの各プロパティの説明が入れ子になって列記されます。データ型の具体的な記述については型の記法の項を参照してください。
-
-
返値:
型名
返値の型と詳細を説明です。
返値のない関数やメソッドについては、この項目は記載されません。
-
例外
関数・メソッドの呼び出しの際に発生する例外の一覧です。 例外の一覧は以下の要素で構成されています:
-
例外の型
Error
やIllegalArgumentException
など、発生する例外の型を記述します。 -
例外の発生条件
例外の型に続いて、発生条件を列挙しています。
列挙された発生条件は互いに独立しています。 つまり列挙されたいずれか一つの条件に当てはまる場合、例外が発生することを示しています。
-
-
-
例
アプリケーションでの利用例を示しています。
例示されるコードは必ずしも実行可能な形式ではなく、モジュールのインポートなどのボイラープレートや実装の詳細については、便宜のために省略されていることがあります。
この項目は省略されていることがあります。
-
解説
関数・メソッドの動作の詳細を解説しています。
この項目は省略されていることがあります。
例
列挙体・定数
列挙体・定数の解説ページの構成はクラスの解説ページと同様です。
型の記法
KotlinやSwiftなどの型の記法は、それぞれの言語の構文および型定義に従います。
JavaScriptの型は以下のいずれかを使います:
-
number
数値型を表します。
-
string
文字列型を表します。
-
boolean
論理値型を表します。
-
bigint
任意精度整数型を表します。
-
symbol
シンボル型を表します。
-
null
null
型を表します。 JavaScriptのtypeof
演算子はnull
をobject
型と判定しますが、ここでは区別します。 -
undefined
undefined
型を表します。 -
object
プレーンオブジェクトの型を表します。 ここでプレーンオブジェクトとは、
Object
クラスから直接生成されるインスタンスやnull
プロトタイプのオブジェクトを指します。記法の詳細はプレーンオブジェクトの型の記法を参照してください。
-
function
クロージャやラムダ式と呼ばれる関数オブジェクトの型を表します。
記法の詳細は関数オブジェクトの型の記法を参照してください。
-
void
関数や
Promise
が値を与えないことを示す特別な型です。 -
any
任意の型の値が使われ得ることを表します。
-
クラス
Object
クラスの、直接または間接の、派生クラスを表します。 -
総称型
型引数を持つと見なせる型です。 例えば
Array
やMap
のようなコレクションや、WeakRef
やPromise
のような特定の値を持つオブジェクトのクラスが相当します。記法の詳細は総称型の記法を参照してください。
プレーンオブジェクトの型の記法
プレーンオブジェクトを値に持つ引数や変数などのデータ型は、常に object
と表記します。
{ foo, bar }
のように使用するプロパティ名を波括弧({}
)に囲んで表記したり、foo: string
のようにプロパティ名に型名を添えることはしません。
代わりに別途、それぞれのプロパティについての詳細を、そのプレーンオブジェクトの説明として記載します。
関数オブジェクトの型の記法
関数オブジェクトの型は常に function
と表記します。
(foo, bar) => baz
のように引数名や返値の型などを型として明示することはしません。
代わりに別途、それぞれの引数や返値やその他の関数の特性についての詳細を、その関数オブジェクトの説明として記載します。
総称型の記法
総称型の型引数は、カンマで区切られた型引数のリストを山括弧(<>
)で囲んで表します。
例えば文字列をキーとして数値を値とする Map
は Map<string, number>
と表されます。
同様に、履行時の値を持たない Promise
は Promise<void>
と表されます。
引数や返値、例外がないメソッドに関してはその項目の記載はありません。
仕様が複雑なものに関しては、例や解説の項目を設けて詳しく説明します。
複数の型の合併
関数の引数や返値の型として、複数の可能な型のいずれかであることを示すのに、縦線(|
)で区切られた型名のリストを使います。
例えば文字列と数値のいずれかであるような型は string
| number
と表されます。
- 値が複数の型のいずれかであることを表す型は一般的に、union 型(合併型)と呼ばれます。 類似の概念に、複数の型の共通部分であることを表す型として、intersection 型(交差型)と呼ばれるものもありますが、本文書では扱いません。
プラットフォームや言語ごとに異なる部分の表記
プラットフォームや言語ごとに異なる記述が必要なものは、以下のようにタブを用いています。
モバイル版に限定された記述。
Web版に限定された記述。
JavaScriptに限定された記述。
Kotlinに限定された記述。
Swiftに限定された記述。