diff --git a/src/point.rs b/src/point.rs index 4f2e5d2..b5a4ed6 100644 --- a/src/point.rs +++ b/src/point.rs @@ -68,8 +68,8 @@ impl TypedPoint2D { #[inline] pub fn new(x: T, y: T) -> Self { TypedPoint2D { - x: x, - y: y, + x, + y, _unit: PhantomData, } } @@ -455,9 +455,9 @@ impl TypedPoint3D { #[inline] pub fn new(x: T, y: T, z: T) -> Self { TypedPoint3D { - x: x, - y: y, - z: z, + x, + y, + z, _unit: PhantomData, } } diff --git a/src/rect.rs b/src/rect.rs index 812816a..4aa2f62 100644 --- a/src/rect.rs +++ b/src/rect.rs @@ -97,8 +97,8 @@ impl TypedRect { /// Constructor. pub fn new(origin: TypedPoint2D, size: TypedSize2D) -> Self { TypedRect { - origin: origin, - size: size, + origin, + size, } } } diff --git a/src/side_offsets.rs b/src/side_offsets.rs index ab05dc0..581aa28 100644 --- a/src/side_offsets.rs +++ b/src/side_offsets.rs @@ -45,10 +45,10 @@ impl TypedSideOffsets2D { /// Constructor taking a scalar for each side. pub fn new(top: T, right: T, bottom: T, left: T) -> Self { TypedSideOffsets2D { - top: top, - right: right, - bottom: bottom, - left: left, + top, + right, + bottom, + left, _unit: PhantomData, } } diff --git a/src/size.rs b/src/size.rs index 0dd010b..03636cc 100644 --- a/src/size.rs +++ b/src/size.rs @@ -47,8 +47,8 @@ impl TypedSize2D { /// Constructor taking scalar values. pub fn new(width: T, height: T) -> Self { TypedSize2D { - width: width, - height: height, + width, + height, _unit: PhantomData, } } diff --git a/src/transform2d.rs b/src/transform2d.rs index 9ac3c6a..dcb25bd 100644 --- a/src/transform2d.rs +++ b/src/transform2d.rs @@ -7,6 +7,8 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. +#![cfg_attr(feature = "cargo-clippy", allow(just_underscores_and_digits))] + use super::{UnknownUnit, Angle}; use num::{One, Zero}; use point::TypedPoint2D; @@ -46,9 +48,9 @@ impl TypedTransform2D { /// Create a transform specifying its matrix elements in row-major order. pub fn row_major(m11: T, m12: T, m21: T, m22: T, m31: T, m32: T) -> Self { TypedTransform2D { - m11: m11, m12: m12, - m21: m21, m22: m22, - m31: m31, m32: m32, + m11, m12, + m21, m22, + m31, m32, _unit: PhantomData, } } @@ -56,9 +58,9 @@ impl TypedTransform2D { /// Create a transform specifying its matrix elements in column-major order. pub fn column_major(m11: T, m21: T, m31: T, m12: T, m22: T, m32: T) -> Self { TypedTransform2D { - m11: m11, m12: m12, - m21: m21, m22: m22, - m31: m31, m32: m32, + m11, m12, + m21, m22, + m31, m32, _unit: PhantomData, } } diff --git a/src/transform3d.rs b/src/transform3d.rs index 495a10c..f6626d4 100644 --- a/src/transform3d.rs +++ b/src/transform3d.rs @@ -7,6 +7,8 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. +#![cfg_attr(feature = "cargo-clippy", allow(just_underscores_and_digits))] + use super::{UnknownUnit, Angle}; use approxeq::ApproxEq; use homogen::HomogeneousVector; @@ -51,6 +53,7 @@ impl TypedTransform3D { /// For example, the translation terms m41, m42, m43 on the last row with the /// row-major convention) are the 13rd, 14th and 15th parameters. #[inline] + #[cfg_attr(feature = "cargo-clippy", allow(too_many_arguments))] pub fn row_major( m11: T, m12: T, m13: T, m14: T, m21: T, m22: T, m23: T, m24: T, @@ -58,10 +61,10 @@ impl TypedTransform3D { m41: T, m42: T, m43: T, m44: T) -> Self { TypedTransform3D { - m11: m11, m12: m12, m13: m13, m14: m14, - m21: m21, m22: m22, m23: m23, m24: m24, - m31: m31, m32: m32, m33: m33, m34: m34, - m41: m41, m42: m42, m43: m43, m44: m44, + m11, m12, m13, m14, + m21, m22, m23, m24, + m31, m32, m33, m34, + m41, m42, m43, m44, _unit: PhantomData, } } @@ -71,6 +74,7 @@ impl TypedTransform3D { /// For example, the translation terms m41, m42, m43 on the last column with the /// column-major convention) are the 4th, 8th and 12nd parameters. #[inline] + #[cfg_attr(feature = "cargo-clippy", allow(too_many_arguments))] pub fn column_major( m11: T, m21: T, m31: T, m41: T, m12: T, m22: T, m32: T, m42: T, @@ -78,10 +82,10 @@ impl TypedTransform3D { m14: T, m24: T, m34: T, m44: T) -> Self { TypedTransform3D { - m11: m11, m12: m12, m13: m13, m14: m14, - m21: m21, m22: m22, m23: m23, m24: m24, - m31: m31, m32: m32, m33: m33, m34: m34, - m41: m41, m42: m42, m43: m43, m44: m44, + m11, m12, m13, m14, + m21, m22, m23, m24, + m31, m32, m33, m34, + m41, m42, m43, m44, _unit: PhantomData, } } diff --git a/src/trig.rs b/src/trig.rs index 195a009..9eb9c23 100644 --- a/src/trig.rs +++ b/src/trig.rs @@ -32,13 +32,17 @@ macro_rules! trig { /// Note that it does not deal with the case where both x and y are 0. #[inline] fn fast_atan2(y: $ty, x: $ty) -> $ty { + // This macro is used with f32 and f64 and clippy warns about the extra + // precision with f32. + #![cfg_attr(feature = "cargo-clippy", allow(excessive_precision))] + // See https://math.stackexchange.com/questions/1098487/atan2-faster-approximation#1105038 use core::$ty::consts; let x_abs = x.abs(); let y_abs = y.abs(); let a = x_abs.min(y_abs) / x_abs.max(y_abs); let s = a * a; - let mut result = ((-0.0464964749 * s + 0.15931422) * s - 0.327622764) * s * a + a; + let mut result = ((-0.046_496_474_9 * s + 0.159_314_22) * s - 0.327_622_764) * s * a + a; if y_abs > x_abs { result = consts::FRAC_PI_2 - result; } diff --git a/src/vector.rs b/src/vector.rs index f86bcb2..ba934bd 100644 --- a/src/vector.rs +++ b/src/vector.rs @@ -65,8 +65,8 @@ impl TypedVector2D { #[inline] pub fn new(x: T, y: T) -> Self { TypedVector2D { - x: x, - y: y, + x, + y, _unit: PhantomData, } } @@ -479,9 +479,9 @@ impl TypedVector3D { #[inline] pub fn new(x: T, y: T, z: T) -> Self { TypedVector3D { - x: x, - y: y, - z: z, + x, + y, + z, _unit: PhantomData, } }