Macro ado_
Source macro_rules! ado_ {
($F:ty; $x:ident = $e:expr; yield $body:expr) => { ... };
($F:ty; $x1:ident = $e1:expr; $x2:ident = $e2:expr; yield $body:expr) => { ... };
($F:ty;
$x1:ident = $e1:expr;
$x2:ident = $e2:expr;
$x3:ident = $e3:expr;
yield $body:expr
) => { ... };
($F:ty;
$x1:ident = $e1:expr;
$x2:ident = $e2:expr;
$x3:ident = $e3:expr;
$x4:ident = $e4:expr;
yield $body:expr
) => { ... };
}
Expand description
Applicative do-notation sugar.
Collects independent bindings and combines them with ap/fmap.
Supports 1–4 bindings followed by yield expr.
§Example
ⓘado_! { OptionF;
x = Some(1);
y = Some(2);
yield x + y
}