Files
@ 73604b87289d
Branch filter:
Location: CSY/reowolf/src/macros.rs - annotation
73604b87289d
703 B
application/rls-services+xml
more debug prints on branch predicates
1e885fa95b12 1e885fa95b12 1e885fa95b12 1e885fa95b12 1e885fa95b12 1e885fa95b12 1e885fa95b12 06f259bf8031 06f259bf8031 06f259bf8031 06f259bf8031 06f259bf8031 06f259bf8031 06f259bf8031 06f259bf8031 06f259bf8031 06f259bf8031 06f259bf8031 06f259bf8031 06f259bf8031 06f259bf8031 06f259bf8031 06f259bf8031 06f259bf8031 06f259bf8031 06f259bf8031 06f259bf8031 06f259bf8031 06f259bf8031 06f259bf8031 06f259bf8031 06f259bf8031 06f259bf8031 06f259bf8031 06f259bf8031 | macro_rules! lockprintln {
() => (print!("\n"));
($($arg:tt)*) => ({
use std::io::Write;
std::writeln!(std::io::stdout().lock(), $($arg)*).expect("LPRINTLN");
})
}
macro_rules! assert_let {
($pat:pat = $expr:expr => $work:expr) => {
if let $pat = $expr {
$work
} else {
panic!("assert_let failed");
}
};
}
#[test]
fn assert_let() {
let x = Some(5);
let z = assert_let![Some(y) = x => {
println!("{:?}", y);
3
}];
println!("{:?}", z);
}
#[test]
#[should_panic]
fn must_let_panic() {
let x: Option<u32> = None;
assert_let![Some(y) = x => {
println!("{:?}", y);
}];
}
|