sim_codec_javascript/
lib.rs1#![forbid(unsafe_code)]
12#![deny(missing_docs)]
13
14mod codec;
15mod lexer;
16mod lower;
17mod parser;
18mod types;
19
20pub use codec::{JavascriptCodec, JavascriptCodecLib};
21pub use lexer::{tokenize, tokenize_with_limits};
22pub use lower::{
23 JavascriptBuilder, decode_javascript, decode_javascript_located, decode_javascript_tree,
24 encode_javascript, lower_javascript,
25};
26pub use parser::{parse_module, parse_module_with_limits, parse_script, parse_script_with_limits};
27pub use types::{
28 Asi, Diagnostic, DiagnosticCode, Goal, LexicalGoal, Limits, Node, NodeKind, Origin, Span,
29 SyntaxTree, Token, TokenKind,
30};
31
32pub const ECMA262_EDITION: &str = "ECMA-262, 17th edition (ECMAScript 2026)";
34pub const ECMA262_AUTHORITY: &str = "https://tc39.es/ecma262/2026/multipage/";
36pub const ECMA262_FROZEN_ON: &str = "2026-08-01";
38pub const TEST262_REVISION: &str = "tc39/test262@main as observed 2026-08-01";
40pub const CORPUS_MANIFEST_SHA256: &str =
42 "88b15b687f3741ba7c0145d1e2f09e05f0b1d8bf95656f257656fe3aefe416da";
43
44pub const JAVASCRIPT_CODEC_ID: sim_kernel::CodecId = sim_kernel::CodecId(0x4a_53_00_00);
46
47#[cfg(test)]
48mod tests;