summaryrefslogtreecommitdiffstats
path: root/third_party/rust/serde_json/src/lexical
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-06-12 05:43:14 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-06-12 05:43:14 +0000
commit8dd16259287f58f9273002717ec4d27e97127719 (patch)
tree3863e62a53829a84037444beab3abd4ed9dfc7d0 /third_party/rust/serde_json/src/lexical
parentReleasing progress-linux version 126.0.1-1~progress7.99u1. (diff)
downloadfirefox-8dd16259287f58f9273002717ec4d27e97127719.tar.xz
firefox-8dd16259287f58f9273002717ec4d27e97127719.zip
Merging upstream version 127.0.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'third_party/rust/serde_json/src/lexical')
-rw-r--r--third_party/rust/serde_json/src/lexical/algorithm.rs5
-rw-r--r--third_party/rust/serde_json/src/lexical/bignum.rs1
-rw-r--r--third_party/rust/serde_json/src/lexical/digit.rs5
-rw-r--r--third_party/rust/serde_json/src/lexical/errors.rs3
-rw-r--r--third_party/rust/serde_json/src/lexical/exponent.rs4
-rw-r--r--third_party/rust/serde_json/src/lexical/large_powers32.rs2
-rw-r--r--third_party/rust/serde_json/src/lexical/large_powers64.rs2
-rw-r--r--third_party/rust/serde_json/src/lexical/math.rs4
-rw-r--r--third_party/rust/serde_json/src/lexical/num.rs13
-rw-r--r--third_party/rust/serde_json/src/lexical/rounding.rs2
10 files changed, 18 insertions, 23 deletions
diff --git a/third_party/rust/serde_json/src/lexical/algorithm.rs b/third_party/rust/serde_json/src/lexical/algorithm.rs
index a2cbf18aff..eaa5e7ebc2 100644
--- a/third_party/rust/serde_json/src/lexical/algorithm.rs
+++ b/third_party/rust/serde_json/src/lexical/algorithm.rs
@@ -51,7 +51,10 @@ where
// Compute the product of the power, if it overflows,
// prematurely return early, otherwise, if we didn't overshoot,
// we can get an exact value.
- let value = mantissa.checked_mul(power)?;
+ let value = match mantissa.checked_mul(power) {
+ None => return None,
+ Some(value) => value,
+ };
if value >> mantissa_size != 0 {
None
} else {
diff --git a/third_party/rust/serde_json/src/lexical/bignum.rs b/third_party/rust/serde_json/src/lexical/bignum.rs
index f9551f534f..4fa7eed6dd 100644
--- a/third_party/rust/serde_json/src/lexical/bignum.rs
+++ b/third_party/rust/serde_json/src/lexical/bignum.rs
@@ -3,6 +3,7 @@
//! Big integer type definition.
use super::math::*;
+#[allow(unused_imports)]
use alloc::vec::Vec;
/// Storage for a big integer type.
diff --git a/third_party/rust/serde_json/src/lexical/digit.rs b/third_party/rust/serde_json/src/lexical/digit.rs
index 882aa9eef2..3d150a1afe 100644
--- a/third_party/rust/serde_json/src/lexical/digit.rs
+++ b/third_party/rust/serde_json/src/lexical/digit.rs
@@ -11,5 +11,8 @@ pub(crate) fn to_digit(c: u8) -> Option<u32> {
// Add digit to mantissa.
#[inline]
pub(crate) fn add_digit(value: u64, digit: u32) -> Option<u64> {
- value.checked_mul(10)?.checked_add(digit as u64)
+ match value.checked_mul(10) {
+ None => None,
+ Some(n) => n.checked_add(digit as u64),
+ }
}
diff --git a/third_party/rust/serde_json/src/lexical/errors.rs b/third_party/rust/serde_json/src/lexical/errors.rs
index cad4bd3d58..f4f41cdc5a 100644
--- a/third_party/rust/serde_json/src/lexical/errors.rs
+++ b/third_party/rust/serde_json/src/lexical/errors.rs
@@ -5,8 +5,7 @@
//! This estimates the error in a floating-point representation.
//!
//! This implementation is loosely based off the Golang implementation,
-//! found here:
-//! https://golang.org/src/strconv/atof.go
+//! found here: <https://golang.org/src/strconv/atof.go>
use super::float::*;
use super::num::*;
diff --git a/third_party/rust/serde_json/src/lexical/exponent.rs b/third_party/rust/serde_json/src/lexical/exponent.rs
index 6fc51977ed..5e27de893f 100644
--- a/third_party/rust/serde_json/src/lexical/exponent.rs
+++ b/third_party/rust/serde_json/src/lexical/exponent.rs
@@ -8,8 +8,8 @@
/// the mantissa we do not overflow for comically-long exponents.
#[inline]
fn into_i32(value: usize) -> i32 {
- if value > i32::max_value() as usize {
- i32::max_value()
+ if value > i32::MAX as usize {
+ i32::MAX
} else {
value as i32
}
diff --git a/third_party/rust/serde_json/src/lexical/large_powers32.rs b/third_party/rust/serde_json/src/lexical/large_powers32.rs
index 7991197262..eb8582f5f0 100644
--- a/third_party/rust/serde_json/src/lexical/large_powers32.rs
+++ b/third_party/rust/serde_json/src/lexical/large_powers32.rs
@@ -2,7 +2,7 @@
//! Precalculated large powers for 32-bit limbs.
-/// Large powers (&[u32]) for base5 operations.
+/// Large powers (`&[u32]`) for base5 operations.
const POW5_1: [u32; 1] = [5];
const POW5_2: [u32; 1] = [25];
const POW5_3: [u32; 1] = [625];
diff --git a/third_party/rust/serde_json/src/lexical/large_powers64.rs b/third_party/rust/serde_json/src/lexical/large_powers64.rs
index ee36561088..96554eac1c 100644
--- a/third_party/rust/serde_json/src/lexical/large_powers64.rs
+++ b/third_party/rust/serde_json/src/lexical/large_powers64.rs
@@ -2,7 +2,7 @@
//! Precalculated large powers for 64-bit limbs.
-/// Large powers (&[u64]) for base5 operations.
+/// Large powers (`&[u64]`) for base5 operations.
const POW5_1: [u64; 1] = [5];
const POW5_2: [u64; 1] = [25];
const POW5_3: [u64; 1] = [625];
diff --git a/third_party/rust/serde_json/src/lexical/math.rs b/third_party/rust/serde_json/src/lexical/math.rs
index 37cc1d24ad..d7122bffaf 100644
--- a/third_party/rust/serde_json/src/lexical/math.rs
+++ b/third_party/rust/serde_json/src/lexical/math.rs
@@ -336,7 +336,7 @@ mod small {
pub fn imul(x: &mut Vec<Limb>, y: Limb) {
// Multiply iteratively over all elements, adding the carry each time.
let mut carry: Limb = 0;
- for xi in x.iter_mut() {
+ for xi in &mut *x {
carry = scalar::imul(xi, y, carry);
}
@@ -482,7 +482,7 @@ mod small {
let rshift = bits - n;
let lshift = n;
let mut prev: Limb = 0;
- for xi in x.iter_mut() {
+ for xi in &mut *x {
let tmp = *xi;
*xi <<= lshift;
*xi |= prev >> rshift;
diff --git a/third_party/rust/serde_json/src/lexical/num.rs b/third_party/rust/serde_json/src/lexical/num.rs
index e47e003419..75eee01b81 100644
--- a/third_party/rust/serde_json/src/lexical/num.rs
+++ b/third_party/rust/serde_json/src/lexical/num.rs
@@ -223,7 +223,7 @@ pub trait Float: Number {
const NEGATIVE_INFINITY_BITS: Self::Unsigned;
/// Size of the significand (mantissa) without hidden bit.
const MANTISSA_SIZE: i32;
- /// Bias of the exponet
+ /// Bias of the exponent
const EXPONENT_BIAS: i32;
/// Exponent portion of a denormal float.
const DENORMAL_EXPONENT: i32;
@@ -248,7 +248,6 @@ pub trait Float: Number {
fn from_bits(u: Self::Unsigned) -> Self;
fn to_bits(self) -> Self::Unsigned;
fn is_sign_positive(self) -> bool;
- fn is_sign_negative(self) -> bool;
/// Returns true if the float is a denormal.
#[inline]
@@ -368,11 +367,6 @@ impl Float for f32 {
fn is_sign_positive(self) -> bool {
f32::is_sign_positive(self)
}
-
- #[inline]
- fn is_sign_negative(self) -> bool {
- f32::is_sign_negative(self)
- }
}
impl Float for f64 {
@@ -432,9 +426,4 @@ impl Float for f64 {
fn is_sign_positive(self) -> bool {
f64::is_sign_positive(self)
}
-
- #[inline]
- fn is_sign_negative(self) -> bool {
- f64::is_sign_negative(self)
- }
}
diff --git a/third_party/rust/serde_json/src/lexical/rounding.rs b/third_party/rust/serde_json/src/lexical/rounding.rs
index 6ec1292aa5..6344875227 100644
--- a/third_party/rust/serde_json/src/lexical/rounding.rs
+++ b/third_party/rust/serde_json/src/lexical/rounding.rs
@@ -25,7 +25,7 @@ pub(crate) fn lower_n_mask(n: u64) -> u64 {
debug_assert!(n <= bits, "lower_n_mask() overflow in shl.");
if n == bits {
- u64::max_value()
+ u64::MAX
} else {
(1 << n) - 1
}