1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
/// macro to efficiently serialise the given structure into
/// cbor binary.
///
/// This performs an in memory serialisation and returns the
/// buffer wrapped in a [`Result`](../enum.Result.html).
///
/// ```
/// #[macro_use]
/// extern crate cbor_event;
///
/// # fn main() {
/// let value = 0u64;
/// let bytes = cbor!(value).unwrap();
/// # assert!(bytes == vec![0])
/// # }
/// ```
#[macro_export]
macro_rules! cbor {
($x:expr) => {{
let mut se = ::cbor_event::se::Serializer::new_vec();
let err = se.serialize(&$x).map(|_| ());
err.map(|_| se.finalize())
}};
}
#[test]
fn test_macro() {}