std:hikari/doc — 言語リファレンスのメタデータ
取得: import doc := "std:hikari/doc"
hikari doc が docs/reference に描くのと同じ生成済みリファレンスデータを Hikari 値と
して返す。doc コメントが単一情報源であり、本モジュールはその読み出し口である。
外部リソースには触れない(データはバイナリに焼き込み済み)。
本モジュールは効果を1 つも持たない(../../language-spec.md §17.9)。
1. entries
form: entries() — {| List(Entry) }
言語リファレンスの全エントリを返す。
Entry = { name: String, title: String, form: String, doc: String, kind: String, module: String, target: String, receiver: String, namespace: String, examples: List(Example) |} Example = { exprs: List(String), expected: List(String), mode: String |}
| フィールド | 意味 |
|---|---|
name |
ライブラリシンボル名(kind=library のとき非空) |
title |
構文エントリの見出し(kind=syntax のとき非空) |
form |
形式(擬似シグネチャ) |
doc |
本文 |
kind |
library / syntax |
module |
std モジュール名(該当時。それ以外は空) |
target |
レンダー先相対パス(syntax.md / prelude.md / std/<mod>.md) |
receiver |
型メソッドのレシーバー型ラベル(String / List 等。それ以外は空) |
namespace |
namespace object メンバーのオーナー名(reflect 等。それ以外は空) |
examples |
実行可能例。exprs は入力式列、expected は期待出力行列 |
modeの語彙:verify(実行し出力一致まで検証)/run_only(実行するが出力は
比較しない)/parse_only(パースのみで実行しない)。- 型シグネチャは含めない(必要になれば追加フィールドで拡張する)。
kind/modeの語彙は将来追加されうる。利用側は未知の値を素通しすること。
2. generated_notice
form: generated_notice — String
生成物 Markdown に付く注記の定型文(値スロット)。リファレンスを後段加工する
ツールが注記段落を認識・除去するために使う。