[][src]Macro bin_io::boilerplate

macro_rules! boilerplate {
    ($vis:vis fn $name:ident ( $($arg:ident : $ty:ty),* ) -> $ret:ty { $($tt:tt)* } ) => { ... };
}

Macro used to remove boilerplate code from a function definition.

Examples

use std::io::{ Read, Write };
 
use bin_io::{ ReadFn, WriteFn };
use bin_io::numbers::be_u8;
 
// Without boilerplate
pub fn my_parser_1<R: Read, W: Write>() 
-> (impl ReadFn<R, u8>, impl WriteFn<W, u8>) {
    be_u8()
}
 
// With boilerplate
use bin_io::boilerplate;
 
boilerplate!(
    pub fn my_parser_2() -> u8 {
        be_u8()    
    }
);