chore: 清理 oxide_emit clippy 告警
This commit is contained in:
@@ -426,10 +426,8 @@ impl Emitter {
|
|||||||
catch_shadow.insert(bi.name.as_str().to_string());
|
catch_shadow.insert(bi.name.as_str().to_string());
|
||||||
}
|
}
|
||||||
oxide_parser::BindingPattern::ArrayPattern(ap) => {
|
oxide_parser::BindingPattern::ArrayPattern(ap) => {
|
||||||
for elem in &ap.elements {
|
for p in ap.elements.iter().flatten() {
|
||||||
if let Some(p) = elem {
|
self.collect_capture_names_binding_pattern(p, ref_set, shadow, out, catch_shadow);
|
||||||
self.collect_capture_names_binding_pattern(p, ref_set, shadow, out, catch_shadow);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
if let Some(rest) = &ap.rest {
|
if let Some(rest) = &ap.rest {
|
||||||
self.collect_capture_names_binding_pattern(&rest.argument, ref_set, shadow, out, catch_shadow);
|
self.collect_capture_names_binding_pattern(&rest.argument, ref_set, shadow, out, catch_shadow);
|
||||||
@@ -470,10 +468,8 @@ impl Emitter {
|
|||||||
self.collect_capture_names_expr(&m.expression, ref_set, shadow, out);
|
self.collect_capture_names_expr(&m.expression, ref_set, shadow, out);
|
||||||
}
|
}
|
||||||
oxide_parser::AssignmentTarget::ArrayAssignmentTarget(a) => {
|
oxide_parser::AssignmentTarget::ArrayAssignmentTarget(a) => {
|
||||||
for elem in &a.elements {
|
for e in a.elements.iter().flatten() {
|
||||||
if let Some(e) = elem {
|
self.collect_capture_names_maybe_default_target(e, ref_set, shadow, out);
|
||||||
self.collect_capture_names_maybe_default_target(e, ref_set, shadow, out);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
if let Some(rest) = &a.rest {
|
if let Some(rest) = &a.rest {
|
||||||
self.collect_capture_names_assign_target(&rest.target, ref_set, shadow, out);
|
self.collect_capture_names_assign_target(&rest.target, ref_set, shadow, out);
|
||||||
@@ -528,10 +524,8 @@ impl Emitter {
|
|||||||
self.collect_capture_names_expr(&m.expression, ref_set, shadow, out);
|
self.collect_capture_names_expr(&m.expression, ref_set, shadow, out);
|
||||||
}
|
}
|
||||||
MaybeDefault::ArrayAssignmentTarget(a) => {
|
MaybeDefault::ArrayAssignmentTarget(a) => {
|
||||||
for elem in &a.elements {
|
for e in a.elements.iter().flatten() {
|
||||||
if let Some(e) = elem {
|
self.collect_capture_names_maybe_default_target(e, ref_set, shadow, out);
|
||||||
self.collect_capture_names_maybe_default_target(e, ref_set, shadow, out);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
MaybeDefault::ObjectAssignmentTarget(o) => {
|
MaybeDefault::ObjectAssignmentTarget(o) => {
|
||||||
@@ -909,10 +903,8 @@ impl Emitter {
|
|||||||
match pattern {
|
match pattern {
|
||||||
oxide_parser::BindingPattern::BindingIdentifier(_) => {}
|
oxide_parser::BindingPattern::BindingIdentifier(_) => {}
|
||||||
oxide_parser::BindingPattern::ArrayPattern(ap) => {
|
oxide_parser::BindingPattern::ArrayPattern(ap) => {
|
||||||
for elem in &ap.elements {
|
for p in ap.elements.iter().flatten() {
|
||||||
if let Some(p) = elem {
|
self.collect_captured_binding_pattern(p, own, out);
|
||||||
self.collect_captured_binding_pattern(p, own, out);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
if let Some(rest) = &ap.rest {
|
if let Some(rest) = &ap.rest {
|
||||||
self.collect_captured_binding_pattern(&rest.argument, own, out);
|
self.collect_captured_binding_pattern(&rest.argument, own, out);
|
||||||
|
|||||||
@@ -704,10 +704,8 @@ impl Emitter {
|
|||||||
self.collect_pattern_default_exprs(&ap.left, out);
|
self.collect_pattern_default_exprs(&ap.left, out);
|
||||||
}
|
}
|
||||||
BindingPattern::ArrayPattern(ap) => {
|
BindingPattern::ArrayPattern(ap) => {
|
||||||
for elem in &ap.elements {
|
for p in ap.elements.iter().flatten() {
|
||||||
if let Some(p) = elem {
|
self.collect_pattern_default_exprs(p, out);
|
||||||
self.collect_pattern_default_exprs(p, out);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
if let Some(rest) = &ap.rest {
|
if let Some(rest) = &ap.rest {
|
||||||
self.collect_pattern_default_exprs(&rest.argument, out);
|
self.collect_pattern_default_exprs(&rest.argument, out);
|
||||||
@@ -822,6 +820,7 @@ impl Emitter {
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[allow(clippy::too_many_arguments)]
|
||||||
fn compile_function_body_with_flags<'a>(
|
fn compile_function_body_with_flags<'a>(
|
||||||
&self, param_specs: &[ParamSpec<'a>], body_stmts: &[Statement<'a>], parent_ctx: &CompileCtx,
|
&self, param_specs: &[ParamSpec<'a>], body_stmts: &[Statement<'a>], parent_ctx: &CompileCtx,
|
||||||
is_expression_body: bool, is_arrow: bool, is_generator: bool, is_async: bool,
|
is_expression_body: bool, is_arrow: bool, is_generator: bool, is_async: bool,
|
||||||
@@ -1069,6 +1068,7 @@ impl Emitter {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// 参数 prologue:函数作用域 + 参数声明/解构 + 闭包捕获与 upvalue 分析。返回 param_base。
|
/// 参数 prologue:函数作用域 + 参数声明/解构 + 闭包捕获与 upvalue 分析。返回 param_base。
|
||||||
|
#[allow(clippy::too_many_arguments)]
|
||||||
fn emit_params_prologue<'a>(
|
fn emit_params_prologue<'a>(
|
||||||
&self, param_specs: &[ParamSpec<'a>], body_stmts: &[Statement<'a>], parent_ctx: &CompileCtx,
|
&self, param_specs: &[ParamSpec<'a>], body_stmts: &[Statement<'a>], parent_ctx: &CompileCtx,
|
||||||
ctx: &mut CompileCtx, body_context: FunctionBodyContext, extra_capture_exprs: &[&'a Expression<'a>],
|
ctx: &mut CompileCtx, body_context: FunctionBodyContext, extra_capture_exprs: &[&'a Expression<'a>],
|
||||||
|
|||||||
@@ -200,7 +200,7 @@ impl Emitter {
|
|||||||
// 自导入:读自身命名空间(依赖即本模块,勿递归)。
|
// 自导入:读自身命名空间(依赖即本模块,勿递归)。
|
||||||
ns_reg
|
ns_reg
|
||||||
} else {
|
} else {
|
||||||
if path_stack.iter().any(|p| *p == resolved.path) {
|
if path_stack.contains(&resolved.path) {
|
||||||
return Err(format!("circular module import not supported: {}", resolved.path));
|
return Err(format!("circular module import not supported: {}", resolved.path));
|
||||||
}
|
}
|
||||||
path_stack.push(resolved.path.clone());
|
path_stack.push(resolved.path.clone());
|
||||||
|
|||||||
@@ -537,10 +537,8 @@ impl Emitter {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
BindingPattern::ArrayPattern(ap) => {
|
BindingPattern::ArrayPattern(ap) => {
|
||||||
for elem in &ap.elements {
|
for e in ap.elements.iter().flatten() {
|
||||||
if let Some(e) = elem {
|
self.predeclare_lexical_pattern(e, is_const, ctx);
|
||||||
self.predeclare_lexical_pattern(e, is_const, ctx);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
if let Some(rest) = &ap.rest {
|
if let Some(rest) = &ap.rest {
|
||||||
self.predeclare_lexical_pattern(&rest.argument, is_const, ctx);
|
self.predeclare_lexical_pattern(&rest.argument, is_const, ctx);
|
||||||
|
|||||||
Reference in New Issue
Block a user