Expand description
AtmOS 組込み JavaScript エンジン。
js/ の lexer+parser 断片を土台に、評価器・ランタイム値・標準ライブラリを実装した
ツリーウォーク方式の JS エンジン。<script> 実行と DOM 連携の足場を提供する。
詳細な到達ライン・段階計画は spec/DESIGN.md / spec/TODO.md を参照。
Re-exports§
pub use dom_bridge::DomBridge;pub use interp::JsRuntime;pub use lexer::Lexer;pub use parser::Parser;pub use value::Value;
Modules§
- ast
- JavaScript の抽象構文木(実用コア相当)。
- bigint
- 任意精度整数 BigInt の実装。
- builtins
- JS 標準ライブラリ(実用コア)。
- dom_
bridge - JS ⇄ レンダラの DOM ブリッジ。
- interp
- ツリーウォーク評価器。
- lexer
- JavaScript の字句解析器。
- parser
- 再帰下降 + 優先順位クライミングの JS パーサ。
- regex
- 小さなバックトラッキング正規表現エンジン。
- selftest 🔒
- JS エンジン自己テスト(mod.rs から分割。2026-07-16 リファクタ フェーズ4)。
ロジック不変。
super::*で mod.rs の JsRuntime/eval/Value 等を取り込む。 - uncaught
- 「呼び出し元へ例外を返せない場所」で起きた JS 例外の整形。
- value
- JS ランタイム値の表現。
Functions§
- eval
- 永続ランタイム上でソースを評価する。戻り値は最後の値、または throw の文字列化。
- parse_
script - ソースをパースして AST を返す(デバッグ/テスト用)。
- parse_
script_ reporting - ソースをパースし、AST と構文エラーの一覧を返す。
- selftest
- JS エンジンの自己テスト。各ケースを評価し、最後の式の文字列化が期待値と一致するか確認。
起動時に呼ばれ
JS_SELFTEST: PASS n/nをシリアルへ出す(CI スモークの判定マーカー)。