structdiff icon indicating copy to clipboard operation
structdiff copied to clipboard

strict comparison of f32 or f64

Open carlocorradini opened this issue 7 months ago • 0 comments

A struct containing f32 or f64 can result in the following clippy warning strict comparison of 'f32' or 'f64'.

Add an option to #[difference] (both at the struct and field level) that allows for an error margin. If this value is present, compare value a to value b within the specified error margin: (x - y).abs() < ERROR_MARGIN. Otherwise, keep a == b and add #[allow(clippy::float_cmp)] to suppress clippy warnings.

If the error margin is present at the struct level, it is propagated to its (float) fields, unless a field has a specific error margin provided via #[difference].

carlocorradini avatar Jul 01 '25 13:07 carlocorradini