grid1d 0.5.1

A mathematically rigorous, type-safe Rust library for 1D grid operations and interval partitions, supporting both native and arbitrary-precision numerics.
Documentation
//! Convenience re-exports for the most common `grid1d` use cases.
//!
//! Importing the prelude covers the vast majority of everyday usage without
//! requiring multiple `use` statements:
//!
//! ```rust
//! use grid1d::prelude::*;
//! use sorted_vec::partial::SortedSet; // external crate, not included
//!
//! let grid = Grid1D::uniform(
//!     IntervalClosed::new(0.0_f64, 1.0),
//!     NumIntervals::try_new(4).unwrap(),
//! );
//! ```
//!
//! ## What is included
//!
//! | Source | Items |
//! |--------|-------|
//! | `grid1d::*` | All types re-exported at crate root (grids, coords, traits, …) |
//! | `grid1d::intervals::*` | All interval types and traits (`IntervalClosed`, `IntervalOpen`, …) |
//! | `grid1d::scalars::*` | All scalar wrapper types (`PositiveSize`, `HashableScalar`, …) |
//! | `num_valid` | `RealNative64StrictFinite`, `RealNative64StrictFiniteInDebug`, `RealScalar` |
//! | `try_create` | `TryNew` |
//!
//! ## What is NOT included
//!
//! - `sorted_vec` — external crate, import directly when needed
//! - `serde` / `serde_json` — import directly when needed
//! - `grid1d::bounds::*` — low-level infrastructure, only needed for custom interval implementors

pub use crate::intervals::*;
pub use crate::scalars::*;
pub use crate::*;
// Explicit re-exports to resolve ambiguities between same-named submodules exposed by
// `crate::intervals::*` and `crate::*` that would otherwise trigger
// the `ambiguous_glob_reexports` lint.
pub use crate::operations;
pub use num_valid::{RealNative64StrictFinite, RealNative64StrictFiniteInDebug, RealScalar};
pub use try_create::TryNew;