doc_examples チュートリアル

このページでは、src/doc_examples/README.mbt.md の実行可能な例を実行・拡張する方法を、メンテナ向けに説明します。

クイックスタート

just docs

は tools/doc_quality.py(リンク、スナップショット、バージョン)を実行し、続いて moon test src/doc_examples --target native --deny-warn を実行します。後者は README のすべての moonbit check ブロックをテストとしてコンパイル・実行します。

日常的なタスク

例を追加する

src/doc_examples/README.mbt.md にブロックを追加します。

```moonbit check
///|
test "a unique, descriptive name" {
  let x = @bin_float.BinFloat::from_int(3)
  inspect(x.to_string(), content="3p0")
}
```

src/doc_examples/moon.pkg に列挙されたパッケージを使い(必要ならそこにインポートを追加します)、テストに一意な名前を付け、結果は inspect で示してください。

このパッケージだけを実行する

Luna-Flow の依存関係を解決できるワークスペースから実行します。

moon test -p Luna-Flow/floating/doc_examples

さらに進んで

マニュアルの各ページはそれぞれ詳細な例を持っています。doc_examples は、モジュールのすべてのテスト実行でコンパイルされなければならない、パッケージ横断のワークフローの小さな集合だけを保持します。

よくある落とし穴

  • --deny-warn は警告(例えば非推奨の呼び出し)を失敗として扱います。
  • check なしでフェンスされたブロックはコンパイルされません。

次のステップ