diff --git a/derive/src/error.rs b/derive/src/error.rs index 784f033e1..7884aa0c4 100644 --- a/derive/src/error.rs +++ b/derive/src/error.rs @@ -121,7 +121,6 @@ impl Diagnostic { } } - #[allow(unconditional_recursion)] pub fn panic(&self) -> ! { match &self.inner { Repr::Single { text, .. } => panic!("{}", text), diff --git a/vm/src/anystr.rs b/vm/src/anystr.rs index 055eb7ad3..ba2652109 100644 --- a/vm/src/anystr.rs +++ b/vm/src/anystr.rs @@ -200,25 +200,24 @@ pub trait AnyStr<'s>: 's { F: Fn(&Self, &T) -> bool, { let (affix, range) = args.get_value(self.bytes_len()); - if range.is_normal() { - let value = self.get_bytes(range); - single_or_tuple_any( - affix, - &|s: &T| Ok(func(value, s)), - &|o| { - format!( - "{} first arg must be {} or a tuple of {}, not {}", - func_name, - py_type_name, - py_type_name, - o.class(), - ) - }, - vm, - ) - } else { - Ok(false) + if !range.is_normal() { + return Ok(false); } + let value = self.get_bytes(range); + single_or_tuple_any( + affix, + &|s: &T| Ok(func(value, s)), + &|o| { + format!( + "{} first arg must be {} or a tuple of {}, not {}", + func_name, + py_type_name, + py_type_name, + o.class(), + ) + }, + vm, + ) } #[inline] diff --git a/vm/src/builtins/float.rs b/vm/src/builtins/float.rs index 542cd91b5..f2d0ad61a 100644 --- a/vm/src/builtins/float.rs +++ b/vm/src/builtins/float.rs @@ -155,7 +155,6 @@ pub fn float_pow(v1: f64, v2: f64, vm: &VirtualMachine) -> PyResult { } #[pyimpl(flags(BASETYPE), with(Comparable, Hashable))] -#[allow(clippy::trivially_copy_pass_by_ref)] impl PyFloat { #[pyslot] fn tp_new( @@ -168,9 +167,7 @@ impl PyFloat { OptionalArg::Present(val) => { let val = if cls.is(&vm.ctx.types.float_type) { match val.downcast_exact::(vm) { - Ok(f) => { - return Ok(f); - } + Ok(f) => return Ok(f), Err(val) => val, } } else { diff --git a/vm/src/builtins/function.rs b/vm/src/builtins/function.rs index d0b3d1eae..4920be64d 100644 --- a/vm/src/builtins/function.rs +++ b/vm/src/builtins/function.rs @@ -218,21 +218,19 @@ impl PyFunction { .zip(&*code.varnames) .skip(code.arg_count) .take(code.kwonlyarg_count) + .filter(|(slot, _)| slot.is_none()) { - if slot.is_none() { - if let Some(defaults) = &get_defaults!().1 { - if let Some(default) = defaults.get_item_option(kwarg.clone(), vm)? { - *slot = Some(default); - continue; - } + if let Some(defaults) = &get_defaults!().1 { + if let Some(default) = defaults.get_item_option(kwarg.clone(), vm)? { + *slot = Some(default); + continue; } - - // No default value and not specified. - return Err(vm.new_type_error(format!( - "Missing required kw only argument: '{}'", - kwarg - ))); } + + // No default value and not specified. + return Err( + vm.new_type_error(format!("Missing required kw only argument: '{}'", kwarg)) + ); } } diff --git a/vm/src/frame.rs b/vm/src/frame.rs index 727874ba1..ca26dacb9 100644 --- a/vm/src/frame.rs +++ b/vm/src/frame.rs @@ -1279,7 +1279,6 @@ impl ExecutingFrame<'_> { Ok(None) } - #[allow(clippy::collapsible_if)] fn execute_build_map( &mut self, vm: &VirtualMachine, @@ -1296,6 +1295,7 @@ impl ExecutingFrame<'_> { vm.new_type_error(format!("'{}' object is not a mapping", obj.class().name)) })?; for (key, value) in dict { + #[allow(clippy::collapsible_if)] if for_call { if map_obj.contains_key(key.clone(), vm) { let key_repr = vm.to_repr(&key)?;