Vendor things
This commit is contained in:
parent
5deceec006
commit
977e3c17e5
19434 changed files with 10682014 additions and 0 deletions
78
third-party/vendor/num-bigint/tests/macros/mod.rs
vendored
Normal file
78
third-party/vendor/num-bigint/tests/macros/mod.rs
vendored
Normal file
|
|
@ -0,0 +1,78 @@
|
|||
#![allow(unused)]
|
||||
|
||||
/// Assert that an op works for all val/ref combinations
|
||||
macro_rules! assert_op {
|
||||
($left:ident $op:tt $right:ident == $expected:expr) => {
|
||||
assert_eq!((&$left) $op (&$right), $expected);
|
||||
assert_eq!((&$left) $op $right.clone(), $expected);
|
||||
assert_eq!($left.clone() $op (&$right), $expected);
|
||||
assert_eq!($left.clone() $op $right.clone(), $expected);
|
||||
};
|
||||
}
|
||||
|
||||
/// Assert that an assign-op works for all val/ref combinations
|
||||
macro_rules! assert_assign_op {
|
||||
($left:ident $op:tt $right:ident == $expected:expr) => {{
|
||||
let mut left = $left.clone();
|
||||
assert_eq!({ left $op &$right; left}, $expected);
|
||||
|
||||
let mut left = $left.clone();
|
||||
assert_eq!({ left $op $right.clone(); left}, $expected);
|
||||
}};
|
||||
}
|
||||
|
||||
/// Assert that an op works for scalar left or right
|
||||
macro_rules! assert_scalar_op {
|
||||
(($($to:ident),*) $left:ident $op:tt $right:ident == $expected:expr) => {
|
||||
$(
|
||||
if let Some(left) = $left.$to() {
|
||||
assert_op!(left $op $right == $expected);
|
||||
}
|
||||
if let Some(right) = $right.$to() {
|
||||
assert_op!($left $op right == $expected);
|
||||
}
|
||||
)*
|
||||
};
|
||||
}
|
||||
|
||||
macro_rules! assert_unsigned_scalar_op {
|
||||
($left:ident $op:tt $right:ident == $expected:expr) => {
|
||||
assert_scalar_op!((to_u8, to_u16, to_u32, to_u64, to_usize, to_u128)
|
||||
$left $op $right == $expected);
|
||||
};
|
||||
}
|
||||
|
||||
macro_rules! assert_signed_scalar_op {
|
||||
($left:ident $op:tt $right:ident == $expected:expr) => {
|
||||
assert_scalar_op!((to_u8, to_u16, to_u32, to_u64, to_usize, to_u128,
|
||||
to_i8, to_i16, to_i32, to_i64, to_isize, to_i128)
|
||||
$left $op $right == $expected);
|
||||
};
|
||||
}
|
||||
|
||||
/// Assert that an op works for scalar right
|
||||
macro_rules! assert_scalar_assign_op {
|
||||
(($($to:ident),*) $left:ident $op:tt $right:ident == $expected:expr) => {
|
||||
$(
|
||||
if let Some(right) = $right.$to() {
|
||||
let mut left = $left.clone();
|
||||
assert_eq!({ left $op right; left}, $expected);
|
||||
}
|
||||
)*
|
||||
};
|
||||
}
|
||||
|
||||
macro_rules! assert_unsigned_scalar_assign_op {
|
||||
($left:ident $op:tt $right:ident == $expected:expr) => {
|
||||
assert_scalar_assign_op!((to_u8, to_u16, to_u32, to_u64, to_usize, to_u128)
|
||||
$left $op $right == $expected);
|
||||
};
|
||||
}
|
||||
|
||||
macro_rules! assert_signed_scalar_assign_op {
|
||||
($left:ident $op:tt $right:ident == $expected:expr) => {
|
||||
assert_scalar_assign_op!((to_u8, to_u16, to_u32, to_u64, to_usize, to_u128,
|
||||
to_i8, to_i16, to_i32, to_i64, to_isize, to_i128)
|
||||
$left $op $right == $expected);
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue