diff options
| author | +merlan #flirora <uruwi@protonmail.com> | 2024-11-27 11:36:04 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-11-27 16:36:04 +0000 |
| commit | 89d96c623dc882fcdbff02e201bcfb27e6bbfd2a (patch) | |
| tree | 9557298a2be59ab2ebf5fe07462b8ddcb056b348 /crates | |
| parent | 27cc489a1d98c6badd6151b5ed70af4a532692d9 (diff) | |
Let decimal constructor accept decimal values (#5481)
Diffstat (limited to 'crates')
| -rw-r--r-- | crates/typst-library/src/foundations/decimal.rs | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/crates/typst-library/src/foundations/decimal.rs b/crates/typst-library/src/foundations/decimal.rs index cf11e1dd..d363a6a4 100644 --- a/crates/typst-library/src/foundations/decimal.rs +++ b/crates/typst-library/src/foundations/decimal.rs @@ -317,6 +317,7 @@ impl Decimal { }) .at(value.span) } + ToDecimal::Decimal(decimal) => Ok(decimal), } } } @@ -429,6 +430,8 @@ impl Hash for Decimal { /// A value that can be cast to a decimal. pub enum ToDecimal { + /// A decimal to be converted to itself. + Decimal(Decimal), /// A string with the decimal's representation. Str(EcoString), /// An integer to be converted to the equivalent decimal. @@ -439,7 +442,9 @@ pub enum ToDecimal { cast! { ToDecimal, + v: Decimal => Self::Decimal(v), v: i64 => Self::Int(v), + v: bool => Self::Int(v as i64), v: f64 => Self::Float(v), v: Str => Self::Str(EcoString::from(v)), } |
