[][src]Macro sfcpl::monoid_def

macro_rules! monoid_def {
    {
        $M:ident<$t:ty>,
        $id:expr,
        $me:expr
    } => { ... };
}

Monoidトレイトの自動実装マクロ

一行目にモノイド名、 二行目に単位元 三行目に`2引数を取って、同型の演算結果を返すクロージャを渡す

monoid_def! {
    Max<usize>,
    std::usize::MIN,
    |x: usize, y: usize| x.max(y)
}