Files
@ 39625667a9b6
Branch filter:
Location: CSY/reowolf/src/macros.rs - annotation
39625667a9b6
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);
}];
}
|