mirror of
https://github.com/pjh456/OxideJS.git
synced 2026-10-23 18:21:13 +08:00
kernel/builtins/test262: 本批新码 clippy 三则 + fmt 归净——obfuscated_if_else(source_escape_to_key 值域判定改 if/else)、needless_range_loop(decode_uri_units 保留字符原样段改 extend_from_slice)、needless_borrows_for_generic_args(844f2f4 rename 调用两处冗余借用);fmt 漂移(compiler.rs/vm.rs 构造体折行)一并归净。七 crate clippy 零告警、fmt --check 净、七 crate 2879/1(唯一失败 compile_class_declaration 既有)、release 子集 8/8 + 2/2 终验
This commit is contained in:
@@ -59,15 +59,20 @@ impl Compiler {
|
||||
|
||||
/// 标记源码为 `source_escape` 产物(动态编译入口:eval / Function 构造器)。
|
||||
pub fn with_source_encoded(self, enable: bool) -> Self {
|
||||
Self { is_source_encoded: enable, ..self }
|
||||
Self {
|
||||
is_source_encoded: enable,
|
||||
..self
|
||||
}
|
||||
}
|
||||
|
||||
/// 编译整个 script program:AST → IR(`Emitter::emit_program`)→ 统一 IR 管线。
|
||||
pub fn compile(&self, program: &oxide_parser::Program) -> Result<CompiledModule, String> {
|
||||
crate::compiler_debug!("compile: starting...");
|
||||
let ir = Emitter::new()
|
||||
.with_source_encoded(self.is_source_encoded)
|
||||
.emit_program(program, self.repl_persist, self.is_eval_script)?;
|
||||
let ir = Emitter::new().with_source_encoded(self.is_source_encoded).emit_program(
|
||||
program,
|
||||
self.repl_persist,
|
||||
self.is_eval_script,
|
||||
)?;
|
||||
self.compile_ir(ir)
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user