From b886ced40825372000df0fa9cddff98a1b642cc6 Mon Sep 17 00:00:00 2001 From: Laurenz Date: Thu, 27 May 2021 14:48:45 +0200 Subject: [PATCH] Switch to N64 type alias --- src/geom/length.rs | 10 +++++----- src/geom/relative.rs | 10 +++++----- src/layout/mod.rs | 4 ++-- src/layout/stack.rs | 8 ++++---- src/library/shapes.rs | 10 +++++----- 5 files changed, 21 insertions(+), 21 deletions(-) diff --git a/src/geom/length.rs b/src/geom/length.rs index 2439000cf..e9ba0853b 100644 --- a/src/geom/length.rs +++ b/src/geom/length.rs @@ -1,4 +1,4 @@ -use decorum::NotNan; +use decorum::N64; use serde::{Deserialize, Serialize}; use super::*; @@ -9,13 +9,13 @@ use super::*; #[serde(transparent)] pub struct Length { /// The length in raw units. - raw: NotNan, + raw: N64, } impl Length { /// The zero length. pub fn zero() -> Self { - Self { raw: 0.0.into() } + Self { raw: N64::from(0.0) } } /// Create a length from a number of points. @@ -40,7 +40,7 @@ impl Length { /// Create a length from a number of raw units. pub fn raw(raw: f64) -> Self { - Self { raw: raw.into() } + Self { raw: N64::from(raw) } } /// Convert this to a number of points. @@ -70,7 +70,7 @@ impl Length { /// Create a length from a value in a unit. pub fn with_unit(val: f64, unit: LengthUnit) -> Self { - Self { raw: (val * unit.raw_scale()).into() } + Self { raw: N64::from(val * unit.raw_scale()) } } /// Get the value of this length in unit. diff --git a/src/geom/relative.rs b/src/geom/relative.rs index 86759bbe6..9f8aea550 100644 --- a/src/geom/relative.rs +++ b/src/geom/relative.rs @@ -1,4 +1,4 @@ -use decorum::NotNan; +use decorum::N64; use super::*; @@ -7,22 +7,22 @@ use super::*; /// _Note_: `50%` is represented as `0.5` here, but stored as `50.0` in the /// corresponding [literal](crate::syntax::Expr::Percent). #[derive(Default, Copy, Clone, PartialEq, PartialOrd, Hash)] -pub struct Relative(NotNan); +pub struct Relative(N64); impl Relative { /// A ratio of `0%` represented as `0.0`. pub fn zero() -> Self { - Self(0.0.into()) + Self(N64::from(0.0)) } /// A ratio of `100%` represented as `1.0`. pub fn one() -> Self { - Self(1.0.into()) + Self(N64::from(1.0)) } /// Create a new relative value. pub fn new(ratio: f64) -> Self { - Self(ratio.into()) + Self(N64::from(ratio)) } /// Get the underlying ratio. diff --git a/src/layout/mod.rs b/src/layout/mod.rs index 51b9bc64a..a025fbc24 100644 --- a/src/layout/mod.rs +++ b/src/layout/mod.rs @@ -20,7 +20,7 @@ use std::any::Any; use std::fmt::{self, Debug, Formatter}; use std::hash::{Hash, Hasher}; -use decorum::NotNan; +use decorum::N64; use fxhash::FxHasher64; use crate::cache::{Cache, FramesEntry}; @@ -257,7 +257,7 @@ impl Regions { } /// Shrink `current` to ensure that the aspect ratio can be satisfied. - pub fn apply_aspect_ratio(&mut self, aspect: NotNan) { + pub fn apply_aspect_ratio(&mut self, aspect: N64) { let width = self.current.width.min(aspect.into_inner() * self.current.height); let height = width / aspect.into_inner(); self.current = Size::new(width, height); diff --git a/src/layout/stack.rs b/src/layout/stack.rs index bb7673785..410f53c66 100644 --- a/src/layout/stack.rs +++ b/src/layout/stack.rs @@ -1,4 +1,4 @@ -use decorum::NotNan; +use decorum::N64; use super::*; @@ -13,7 +13,7 @@ pub struct StackNode { /// The fixed aspect ratio between width and height, if any. /// /// The resulting frames will satisfy `width = aspect * height`. - pub aspect: Option>, + pub aspect: Option, /// The nodes to be stacked. pub children: Vec, } @@ -58,7 +58,7 @@ impl From for AnyNode { struct StackLayouter { dirs: Gen, - aspect: Option>, + aspect: Option, main: SpecAxis, regions: Regions, finished: Vec, @@ -69,7 +69,7 @@ struct StackLayouter { } impl StackLayouter { - fn new(dirs: Gen, aspect: Option>, mut regions: Regions) -> Self { + fn new(dirs: Gen, aspect: Option, mut regions: Regions) -> Self { if let Some(aspect) = aspect { regions.apply_aspect_ratio(aspect); } diff --git a/src/library/shapes.rs b/src/library/shapes.rs index 05cc2e2d3..a47203c43 100644 --- a/src/library/shapes.rs +++ b/src/library/shapes.rs @@ -1,6 +1,6 @@ use std::f64::consts::SQRT_2; -use decorum::NotNan; +use decorum::N64; use super::*; use crate::color::Color; @@ -49,14 +49,14 @@ pub fn square(ctx: &mut EvalContext, args: &mut FuncArgs) -> Value { let height = width.is_none().then(|| args.eat_named(ctx, "height")).flatten(); let fill = args.eat_named(ctx, "fill"); let body = args.eat::(ctx).unwrap_or_default(); - rect_impl("square", width, height, Some(1.0.into()), fill, body) + rect_impl("square", width, height, Some(N64::from(1.0)), fill, body) } fn rect_impl( name: &str, width: Option, height: Option, - aspect: Option>, + aspect: Option, fill: Option, body: TemplateValue, ) -> Value { @@ -121,14 +121,14 @@ pub fn circle(ctx: &mut EvalContext, args: &mut FuncArgs) -> Value { let height = width.is_none().then(|| args.eat_named(ctx, "height")).flatten(); let fill = args.eat_named(ctx, "fill"); let body = args.eat::(ctx).unwrap_or_default(); - ellipse_impl("circle", width, height, Some(1.0.into()), fill, body) + ellipse_impl("circle", width, height, Some(N64::from(1.0)), fill, body) } fn ellipse_impl( name: &str, width: Option, height: Option, - aspect: Option>, + aspect: Option, fill: Option, body: TemplateValue, ) -> Value {