Challenge to build a toy browser in Rust
次のコマンドでsrc/main.rs
のrun_html
関数に定義されたサンプル動作を見ることができます。
cargo run -- html
ログレベルをdebug
にすると、パーサーの状態遷移やトークン発行のログが表示されるようになります。
RUST_LOG=debug cargo run -- html
ログレベルをtrace
にすると、Tokenizerの各状態で検出した処理対象の文字も表示されるようになります。
RUST_LOG=trace cargo run -- html
-- html
ではなく、-- fast_html
とすると、高速化バージョンを実行できます。
- 古いDOCTYPE
- 文字参照
- コメント
- canvas、script、noscriptタグ
- styleタグ
- framesetタグ
- templateタグ
- searchタグ + form関連タグ
- SVG関連タグ
- MathML関連タグ
現時点ではセレクタのパーサーしか実装されていません。
次のコマンドでsrc/main.rs
のrun_css
関数に定義されたサンプル動作を見ることができます。
cargo run -- css