1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
#[macro_export]
macro_rules! def_measure{
    (
        $(
        $vis:vis $alias:ident = $type:ty ,
        )+
    ) => {
        $(
        $crate::def_measure!($vis $alias = $type );
        )+
    };
    ( $vis:vis $alias:ident<$num:ty> = $type:ty ) => {
        $vis type $alias = $crate::measure::Measure<$num, $type>;
    };
    ( $vis:vis $alias:ident = $type:ty ) => {
        $vis type $alias<N> = $crate::measure::Measure<N, $type>;
    };
}