1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
#[macro_export]
macro_rules! to_elem_vec_impl {
($t:ty) => {
impl From<$t> for Vec<MessageElem> {
fn from(e: $t) -> Self {
let mut vec = vec![];
<$t>::push_to(e, &mut vec);
vec
}
}
};
}
#[macro_export]
macro_rules! push_builder_impl {
($t:ty) => {
impl PushBuilder for $t {
fn push_builder(elem: Self, builder: &mut MessageChainBuilder) {
builder.flush();
Self::push_to(elem, &mut builder.elems);
}
}
};
}