mod band;
mod linear;
mod ordinal;
mod point;
mod sealed;
pub use band::ScaleBand;
pub use linear::ScaleLinear;
pub use ordinal::ScaleOrdinal;
pub use point::ScalePoint;
use num_traits::{Num, ToPrimitive};
pub trait PlotValue: sealed::Sealed + Copy + PartialOrd + Num + ToPrimitive + 'static {}
impl PlotValue for f32 {}
impl PlotValue for f64 {}
#[cfg(feature = "decimal")]
impl PlotValue for rust_decimal::Decimal {}
pub trait Scale<T> {
fn tick(&self, value: &T) -> Option<f32>;
fn nearest_index(&self, _tick: f32) -> usize {
0
}
}