float_next_after 2.0.0

A trait for native rust f64/f32 nextafter
Documentation
# Rust Float NextAfter Release Notes

A native Rust next after float function, which is provided as a trait for f32 and f64 types. It steps to the next
representable floating point, even if it is subnormal. See [`README.md`](./README.md) for usage instructions.

## Known issues

## Changes

### Version 2.0.0

Breaking changes:

- Now allows moving away from infinity. Per IEEE 754 and C standard library behavior, stepping away from infinity
  returns MAX/MIN. Previously `core::f64::INFINITY.next_after(core::f64::NEG_INFINITY)` would return
  `core::f64::INFINITY`, now it returns `core::f64::MAX`. Likewise,
  `core::f64::NEG_INFINITY.next_after(core::f64::INFINITY)` would return `core::f64::NEG_INFINITY`, now it returns
  `core::f64::MIN`.

New Features:

- Inlined the `short_circuit_operands` macro, which provides a performance improvement of about 20%.
- Increased testing surface area for further edge cases.

### Version 1.0.0

Breaking changes:

- The NextAfter trait is now provided for the types `f32` and `f64` and no longer provided as a generic constrained to
  the type `num_traits::Float`.
- The library is now `#![no_std]`.

New Features:

- Removed dependence on the std library, the library is now `#![no_std]`.
- Now uses macros to create the trait for `f32` and `f64` directly without any use of the generic contraint using
  `num_traits::Float`.
- CI/CD test running on git push.

Structural changes:

- Tests are written with a macro now so no code needs to be repeated to run tests for `f32` and `f64`.
- Code cleanup with:
    - 0 equality check integrated into `short_circuit_operands`.
    - Early return is used throughout.
    - Single check for infinite source number (it had been a separate check for positive and for negative infinity).

Performance:

- Removed one unneccesary creation of a stack variable.

### Version 0.7.0

Bug fixes:

- Updated the examples in `README.md`