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