summaryrefslogtreecommitdiff
path: root/crates
diff options
context:
space:
mode:
authorLaurenz <laurmaedje@gmail.com>2024-03-07 17:07:52 +0100
committerGitHub <noreply@github.com>2024-03-07 16:07:52 +0000
commit1fa0f2f0f025bd5b0968f6cfc4a692916f31b24b (patch)
tree57d06e59a3525f50a8ed1cdb8b467f7d772741a5 /crates
parent1d32145319211b6faed1f2ce4892347fde7a3f50 (diff)
Remove `safe_div` (#3572)
Diffstat (limited to 'crates')
-rw-r--r--crates/typst/src/layout/abs.rs11
-rw-r--r--crates/typst/src/layout/pad.rs2
-rw-r--r--crates/typst/src/visualize/image/mod.rs6
3 files changed, 4 insertions, 15 deletions
diff --git a/crates/typst/src/layout/abs.rs b/crates/typst/src/layout/abs.rs
index 459f0370..b1916795 100644
--- a/crates/typst/src/layout/abs.rs
+++ b/crates/typst/src/layout/abs.rs
@@ -117,17 +117,6 @@ impl Abs {
pub fn approx_eq(self, other: Self) -> bool {
self == other || (self - other).to_raw().abs() < 1e-6
}
-
- /// Perform a checked division by a number, returning zero if the result
- /// is not finite.
- pub fn safe_div(self, number: f64) -> Self {
- let result = self.to_raw() / number;
- if result.is_finite() {
- Self::raw(result)
- } else {
- Self::zero()
- }
- }
}
impl Numeric for Abs {
diff --git a/crates/typst/src/layout/pad.rs b/crates/typst/src/layout/pad.rs
index 0df1f2f2..fdc4d0b6 100644
--- a/crates/typst/src/layout/pad.rs
+++ b/crates/typst/src/layout/pad.rs
@@ -122,5 +122,5 @@ fn shrink(size: Size, padding: Sides<Rel<Abs>>) -> Size {
/// <=> (1 - p.rel) * w = s + p.abs
/// <=> w = (s + p.abs) / (1 - p.rel)
fn grow(size: Size, padding: Sides<Rel<Abs>>) -> Size {
- size.zip_map(padding.sum_by_axis(), |s, p| (s + p.abs).safe_div(1.0 - p.rel.get()))
+ size.zip_map(padding.sum_by_axis(), |s, p| (s + p.abs) / (1.0 - p.rel.get()))
}
diff --git a/crates/typst/src/visualize/image/mod.rs b/crates/typst/src/visualize/image/mod.rs
index 199564c6..beac1428 100644
--- a/crates/typst/src/visualize/image/mod.rs
+++ b/crates/typst/src/visualize/image/mod.rs
@@ -209,7 +209,7 @@ impl LayoutSingle for Packed<ImageElem> {
region
} else if expand.x {
// If just width is forced, take it.
- Size::new(region.x, region.y.min(region.x.safe_div(px_ratio)))
+ Size::new(region.x, region.y.min(region.x / px_ratio))
} else if expand.y {
// If just height is forced, take it.
Size::new(region.x.min(region.y * px_ratio), region.y)
@@ -220,7 +220,7 @@ impl LayoutSingle for Packed<ImageElem> {
let natural = Axes::new(pxw, pxh).map(|v| Abs::inches(v / dpi));
Size::new(
natural.x.min(region.x).min(region.y * px_ratio),
- natural.y.min(region.y).min(region.x.safe_div(px_ratio)),
+ natural.y.min(region.y).min(region.x / px_ratio),
)
};
@@ -229,7 +229,7 @@ impl LayoutSingle for Packed<ImageElem> {
let fitted = match fit {
ImageFit::Cover | ImageFit::Contain => {
if wide == (fit == ImageFit::Contain) {
- Size::new(target.x, target.x.safe_div(px_ratio))
+ Size::new(target.x, target.x / px_ratio)
} else {
Size::new(target.y * px_ratio, target.y)
}