Merge pull request #1 from nayuki/master

merge
pull/177/head
John Selbie 3 years ago committed by GitHub
commit 90c26f8bf8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -965,6 +965,7 @@ impl FinderPenalty {
let n = rh[1]; let n = rh[1];
debug_assert!(n <= self.qr_size * 3); debug_assert!(n <= self.qr_size * 3);
let core = n > 0 && rh[2] == n && rh[3] == n * 3 && rh[4] == n && rh[5] == n; let core = n > 0 && rh[2] == n && rh[3] == n * 3 && rh[4] == n && rh[5] == n;
#[allow(unused_parens)]
( i32::from(core && rh[0] >= n * 4 && rh[6] >= n) ( i32::from(core && rh[0] >= n * 4 && rh[6] >= n)
+ i32::from(core && rh[6] >= n * 4 && rh[0] >= n)) + i32::from(core && rh[6] >= n * 4 && rh[0] >= n))
} }
@ -1431,13 +1432,13 @@ impl Version {
/// Creates a version object from the given number. /// Creates a version object from the given number.
/// ///
/// Panics if the number is outside the range [1, 40]. /// Panics if the number is outside the range [1, 40].
pub fn new(ver: u8) -> Self { pub const fn new(ver: u8) -> Self {
assert!((Version::MIN.value() ..= Version::MAX.value()).contains(&ver), "Version number out of range"); assert!(Version::MIN.value() <= ver && ver <= Version::MAX.value(), "Version number out of range");
Self(ver) Self(ver)
} }
/// Returns the value, which is in the range [1, 40]. /// Returns the value, which is in the range [1, 40].
pub fn value(self) -> u8 { pub const fn value(self) -> u8 {
self.0 self.0
} }
@ -1458,13 +1459,13 @@ impl Mask {
/// Creates a mask object from the given number. /// Creates a mask object from the given number.
/// ///
/// Panics if the number is outside the range [0, 7]. /// Panics if the number is outside the range [0, 7].
pub fn new(mask: u8) -> Self { pub const fn new(mask: u8) -> Self {
assert!(mask <= 7, "Mask value out of range"); assert!(mask <= 7, "Mask value out of range");
Self(mask) Self(mask)
} }
/// Returns the value, which is in the range [0, 7]. /// Returns the value, which is in the range [0, 7].
pub fn value(self) -> u8 { pub const fn value(self) -> u8 {
self.0 self.0
} }
} }

@ -839,6 +839,7 @@ impl FinderPenalty {
let n = rh[1]; let n = rh[1];
debug_assert!(n <= self.qr_size * 3); debug_assert!(n <= self.qr_size * 3);
let core = n > 0 && rh[2] == n && rh[3] == n * 3 && rh[4] == n && rh[5] == n; let core = n > 0 && rh[2] == n && rh[3] == n * 3 && rh[4] == n && rh[5] == n;
#[allow(unused_parens)]
( i32::from(core && rh[0] >= n * 4 && rh[6] >= n) ( i32::from(core && rh[0] >= n * 4 && rh[6] >= n)
+ i32::from(core && rh[6] >= n * 4 && rh[0] >= n)) + i32::from(core && rh[6] >= n * 4 && rh[0] >= n))
} }
@ -1264,13 +1265,13 @@ impl Version {
/// Creates a version object from the given number. /// Creates a version object from the given number.
/// ///
/// Panics if the number is outside the range [1, 40]. /// Panics if the number is outside the range [1, 40].
pub fn new(ver: u8) -> Self { pub const fn new(ver: u8) -> Self {
assert!((Version::MIN.value() ..= Version::MAX.value()).contains(&ver), "Version number out of range"); assert!(Version::MIN.value() <= ver && ver <= Version::MAX.value(), "Version number out of range");
Self(ver) Self(ver)
} }
/// Returns the value, which is in the range [1, 40]. /// Returns the value, which is in the range [1, 40].
pub fn value(self) -> u8 { pub const fn value(self) -> u8 {
self.0 self.0
} }
} }
@ -1284,13 +1285,13 @@ impl Mask {
/// Creates a mask object from the given number. /// Creates a mask object from the given number.
/// ///
/// Panics if the number is outside the range [0, 7]. /// Panics if the number is outside the range [0, 7].
pub fn new(mask: u8) -> Self { pub const fn new(mask: u8) -> Self {
assert!(mask <= 7, "Mask value out of range"); assert!(mask <= 7, "Mask value out of range");
Self(mask) Self(mask)
} }
/// Returns the value, which is in the range [0, 7]. /// Returns the value, which is in the range [0, 7].
pub fn value(self) -> u8 { pub const fn value(self) -> u8 {
self.0 self.0
} }
} }

Loading…
Cancel
Save