Merge pull request #44 from gavofyork/gav

Nice macros.
This commit is contained in:
Marek Kotewicz 2016-01-13 23:23:13 +01:00
commit 8a789533d2

View File

@ -5,3 +5,31 @@ pub use uint::*;
pub use bytes::*; pub use bytes::*;
pub use vector::*; pub use vector::*;
pub use sha3::*; pub use sha3::*;
#[macro_export]
macro_rules! map {
( $( $x:expr => $y:expr ),* ) => {
vec![ $( ($x, $y) ),* ].into_iter().collect::<BTreeMap<_, _>>()
}
}
#[macro_export]
macro_rules! mapx {
( $( $x:expr => $y:expr ),* ) => {
vec![ $( ( From::from($x), From::from($y) ) ),* ].into_iter().collect::<BTreeMap<_, _>>()
}
}
#[macro_export]
macro_rules! x {
( $x:expr ) => {
From::from($x)
}
}
#[macro_export]
macro_rules! xx {
( $x:expr ) => {
From::from(From::from($x))
}
}