diff --git a/src/export/pdf.rs b/src/export/pdf.rs index 7de34905c..b9312c0a3 100644 --- a/src/export/pdf.rs +++ b/src/export/pdf.rs @@ -583,10 +583,10 @@ impl<'a> PageExporter<'a> { let Transform { sx, ky, kx, sy, tx, ty } = transform; self.state.transform = self.state.transform.pre_concat(transform); self.content.transform([ - sx.get() as f32, - ky.get() as f32, - kx.get() as f32, - sy.get() as f32, + sx.get() as _, + ky.get() as _, + kx.get() as _, + sy.get() as _, tx.to_f32(), ty.to_f32(), ]); diff --git a/src/layout/mod.rs b/src/layout/mod.rs index a491789a9..405e4e83c 100644 --- a/src/layout/mod.rs +++ b/src/layout/mod.rs @@ -106,7 +106,7 @@ impl PackedNode { /// Force a size for this node. pub fn sized(self, sizing: Spec>) -> Self { if sizing.any(Option::is_some) { - SizedNode { child: self, sizing }.pack() + SizedNode { sizing, child: self }.pack() } else { self } @@ -115,7 +115,7 @@ impl PackedNode { /// Set alignments for this node. pub fn aligned(self, aligns: Spec>) -> Self { if aligns.any(Option::is_some) { - AlignNode { child: self, aligns }.pack() + AlignNode { aligns, child: self }.pack() } else { self } @@ -128,7 +128,7 @@ impl PackedNode { || !padding.right.is_zero() || !padding.bottom.is_zero() { - PadNode { child: self, padding }.pack() + PadNode { padding, child: self }.pack() } else { self } @@ -145,7 +145,7 @@ impl PackedNode { /// Transform this node's contents without affecting layout. pub fn transformed(self, transform: Transform, origin: Spec) -> Self { if !transform.is_identity() { - TransformNode { child: self, transform, origin }.pack() + TransformNode { transform, origin, child: self }.pack() } else { self } diff --git a/src/library/align.rs b/src/library/align.rs index fa4d17c55..f788b325c 100644 --- a/src/library/align.rs +++ b/src/library/align.rs @@ -17,10 +17,10 @@ pub fn align(_: &mut EvalContext, args: &mut Args) -> TypResult { /// A node that aligns its child. #[derive(Debug, Hash)] pub struct AlignNode { - /// The node to be aligned. - pub child: PackedNode, /// How to align the node horizontally and vertically. pub aligns: Spec>, + /// The node to be aligned. + pub child: PackedNode, } impl Layout for AlignNode { diff --git a/src/library/flow.rs b/src/library/flow.rs index 93dcbea67..44ce63044 100644 --- a/src/library/flow.rs +++ b/src/library/flow.rs @@ -68,7 +68,7 @@ pub enum FlowChild { impl Debug for FlowChild { fn fmt(&self, f: &mut Formatter) -> fmt::Result { match self { - Self::Spacing(v) => write!(f, "Spacing({:?})", v), + Self::Spacing(spacing) => spacing.fmt(f), Self::Node(node) => node.fmt(f), } } diff --git a/src/library/grid.rs b/src/library/grid.rs index 6bd723888..b48856eb9 100644 --- a/src/library/grid.rs +++ b/src/library/grid.rs @@ -490,19 +490,19 @@ impl<'a> GridLayouter<'a> { fn layout_multi_row( &self, ctx: &mut LayoutContext, - resolved: &[Length], + heights: &[Length], y: usize, ) -> Vec { // Prepare frames. - let mut outputs: Vec<_> = resolved + let mut outputs: Vec<_> = heights .iter() .map(|&h| Frame::new(Size::new(self.used.w, h), h)) .collect(); // Prepare regions. - let size = Size::new(self.used.w, resolved[0]); + let size = Size::new(self.used.w, heights[0]); let mut pod = Regions::one(size, self.regions.base, Spec::splat(true)); - pod.backlog = resolved[1 ..] + pod.backlog = heights[1 ..] .iter() .map(|&h| Size::new(self.used.w, h)) .collect::>() diff --git a/src/library/image.rs b/src/library/image.rs index 178226199..a421af606 100644 --- a/src/library/image.rs +++ b/src/library/image.rs @@ -73,7 +73,7 @@ impl Layout for ImageNode { ImageFit::Stretch => canvas, }; - // The position of the image so that it is centered in the canvas. + // Position the image so that it is centered in the canvas. let mut frame = Frame::new(canvas, canvas.h); frame.push( (canvas - size).to_point() / 2.0, diff --git a/src/library/pad.rs b/src/library/pad.rs index 829272cca..7604af400 100644 --- a/src/library/pad.rs +++ b/src/library/pad.rs @@ -23,10 +23,10 @@ pub fn pad(_: &mut EvalContext, args: &mut Args) -> TypResult { /// A node that adds padding to its child. #[derive(Debug, Hash)] pub struct PadNode { - /// The child node whose sides to pad. - pub child: PackedNode, /// The amount of padding. pub padding: Sides, + /// The child node whose sides to pad. + pub child: PackedNode, } impl Layout for PadNode { diff --git a/src/library/page.rs b/src/library/page.rs index b256a5211..1ac21facf 100644 --- a/src/library/page.rs +++ b/src/library/page.rs @@ -82,12 +82,12 @@ pub fn pagebreak(_: &mut EvalContext, _: &mut Args) -> TypResult { /// Layouts its children onto one or multiple pages. #[derive(Debug, Hash)] pub struct PageNode { - /// The node that produces the actual pages. - pub child: PackedNode, /// The size of the page. pub size: Size, /// The background fill. pub fill: Option, + /// The node that produces the actual pages. + pub child: PackedNode, } impl PageNode { diff --git a/src/library/sized.rs b/src/library/sized.rs index d137c51ee..3e27ff2f7 100644 --- a/src/library/sized.rs +++ b/src/library/sized.rs @@ -23,10 +23,10 @@ pub fn block(_: &mut EvalContext, args: &mut Args) -> TypResult { /// A node that sizes its child. #[derive(Debug, Hash)] pub struct SizedNode { - /// The node to be sized. - pub child: PackedNode, /// How to size the node horizontally and vertically. pub sizing: Spec>, + /// The node to be sized. + pub child: PackedNode, } impl Layout for SizedNode { diff --git a/src/library/stack.rs b/src/library/stack.rs index a2e80ba5f..d0d5225ed 100644 --- a/src/library/stack.rs +++ b/src/library/stack.rs @@ -82,7 +82,7 @@ pub enum StackChild { impl Debug for StackChild { fn fmt(&self, f: &mut Formatter) -> fmt::Result { match self { - Self::Spacing(v) => write!(f, "Spacing({:?})", v), + Self::Spacing(spacing) => spacing.fmt(f), Self::Node(node) => node.fmt(f), } } diff --git a/src/library/text.rs b/src/library/text.rs index c0ee80e15..f1cd2b4d2 100644 --- a/src/library/text.rs +++ b/src/library/text.rs @@ -165,7 +165,7 @@ pub fn font(ctx: &mut EvalContext, args: &mut Args) -> TypResult { let tracking = args.named("tracking")?.map(Em::new); let top_edge = args.named("top-edge")?; let bottom_edge = args.named("bottom-edge")?; - let fill = args.named("fill")?.or_else(|| args.find()).map(Paint::Solid); + let fill = args.named("fill")?.or_else(|| args.find()); let kerning = args.named("kerning")?; let smallcaps = args.named("smallcaps")?; let alternates = args.named("alternates")?; diff --git a/src/library/transform.rs b/src/library/transform.rs index 8d1c6132c..75df8067c 100644 --- a/src/library/transform.rs +++ b/src/library/transform.rs @@ -40,12 +40,12 @@ fn transform_impl(args: &mut Args, transform: Transform) -> TypResult { /// A node that transforms its child without affecting layout. #[derive(Debug, Hash)] pub struct TransformNode { - /// The node whose contents should be transformed. - pub child: PackedNode, /// Transformation to apply to the contents. pub transform: Transform, /// The origin of the transformation. pub origin: Spec, + /// The node whose contents should be transformed. + pub child: PackedNode, } impl Layout for TransformNode { diff --git a/src/syntax/mod.rs b/src/syntax/mod.rs index 6f04cdc91..55a438535 100644 --- a/src/syntax/mod.rs +++ b/src/syntax/mod.rs @@ -16,7 +16,7 @@ use crate::geom::{AngularUnit, LengthUnit}; use crate::source::SourceId; use crate::util::EcoString; -/// An inner of leaf node in the untyped green tree. +/// An inner or leaf node in the untyped green tree. #[derive(Clone, PartialEq)] pub enum Green { /// A reference-counted inner node.