『STD リファレンス』は Kagari の標準ライブラリ std のリファレンスです。ライブラリのすべての公開アイテムを、正確なシグネチャと意味とともに、モジュールごとに 1 ページずつ、Node.js の API ドキュメントの形式で記載します。
言語そのもの(構文、関数種別、シーン、フォーム、数値)は 言語リファレンス で説明しています。本リファレンスはその内容を前提とします。
ページの構成
モジュールのページはすべて同じ形をしています。
- タイトルはモジュールのパスです。例:
`std::time`。 - 安定性 行(
> **安定性:** 安定 — …)がモジュールを要約し、その安定性を示します(後述)。 - 導入の段落で、モジュールの目的とアイテムの関数種別を説明します。
- 省略可能な Overview 表が、ページ内のアイテムを一覧にします。
- アイテムごとに H2 節を 1 つ置き、モジュールのソースファイルでの宣言順に並べます。見出しにはアイテムの種類を書きます:
Struct:、Enum:、Trait:、Type:、Constant:、Function:。 - メソッド、関連関数、バリアントのまとまりごとに、型の下に H3 節を 1 つ置きます。
各アイテムの節は、std が宣言しているとおりの宣言から始まり、続いて次を記載します。
- 引数ごとに 1 項目:名前、型、意味
Returns:戻り値の型と意味- バッジ行:
Kind: … · Builtin: … · Profile: …(後述) - 意味、エッジケース、関連する診断、短い例
ガイド(Staging Recipes、System Recipes)では、アイテムの組み合わせ方を示します。付録には、std アイテムに適用されるコンパイラの規則と、各ランタイムプロファイルが対応する範囲を記載します。
安定性
| 安定性 | 意味 |
|---|---|
| 安定(Stable) | コンパイラとランタイムが実装済みです。シグネチャと意味は、その旨を明記した新しいツールチェーンのバージョンでのみ変わります。 |
| 暫定(Tentative) | 実装済みですが、設計は確定していません。名前、シグネチャ、意味が変わる可能性があります。 |
| 予定(Planned) | 設計済み、または要望段階で、実装されていません。ページは意図を説明するもので、まだ何も使えません。 |
ページの最初の行がモジュールの安定性を示します。モジュールと異なる安定性のアイテムには、個別に 安定性: の注記を付けます。
種別バッジ
アイテムのバッジ行は関数種別を示します。
| バッジ | 意味 |
|---|---|
Kind: const fn | 純粋な関数です。どの種別のコードからも呼べます。物語の中では、定数引数の呼び出しは畳み込まれ、有限型の実行時引数の呼び出しは表化されます。 |
Kind: fn | 通常のコードです:ゲームシステム、UI、設定。const fn や物語からは呼べません。 |
Kind: pushdown fn | 物語のコードです。物語からのみ呼べ、一部はシーンからのみ呼べます。 |
種別間の呼び出し規則は言語の規則そのものです。関数種別 を参照してください。std のメソッドとビルトインにも、自作の関数とまったく同じように適用されます。
#[builtin] アイテム
#[builtin] が付いたアイテムは std 内に本体を持たず、コンパイラまたはエンジンが提供します。
#[builtin]の型は不透明です。見えるフィールドはなく、依存できるレイアウトもありません。メソッドと、その型を受け取る関数を通してのみ使います。Text、Screen、Narrative、アセット型がその例です。#[builtin]の関数は、他の関数と同じく宣言どおりのシグネチャと種別を持ちます。#[builtin]はstd専用です。ゲームはビルトインを宣言できません。
#[builtin] が付いていないものはすべて通常の Kagari コードで、スタジオが自分で書くこともできたものです。std::time やテキスト効果のコンストラクタがその例です。
バッジには Builtin: yes または Builtin: no と書きます。
シグネチャの表記
- シグネチャは
stdのソースから写しています。ドキュメントコメントは短縮または省略しています。 - メソッドの見出しは
`Type::method(args)`とし、self、&self、&mut selfは宣言どおりに示します。 - ジェネリクスの引数は Rust と同じく
<T>、<T: Eq>、<const N: usize>と書きます。 Int<lo, hi>は言語の範囲付き整数型です。Rust の整数(u8…i128、usize、isize)とboolは言語の型で、std のアイテムではありません。- 位置と長さはピクセル、時間は
Duration、割合はDecimalです。 - 「評価エラー」とは、呼び出しが定数評価されるときはコンパイルエラー、それ以外では実行時エラーのことです。
プロファイルの注記
ランタイムプロファイルとは、ランタイムが提供する機能とアセット形式の集合です。あるプロファイルが対応していないアイテムには、バッジ行に Profile: not in native_v0 のように記載します。全体の対応表は ランタイムプロファイル にあります。
最終更新日 2026年10月29日