1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
#[macro_export]
macro_rules! gen_new {
  ($r:ident, $($field:ident : $field_type:ty),*) => {
    impl $r {
      pub fn new($($field: $field_type),*) -> Self {
        $r {
          $($field: $field),*
        }
      }
    }
  }
}