1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
/// Provides a convient syntax for monadic computations.
///
/// # Example
///
/// ```
/// #[macro_use] extern crate operational;
/// use operational::point;
/// use operational::instr::identity;
/// fn main() {
/// let l = seq!{
/// for x = point(42);
/// for _ = point(0);
/// let y = x + 5;
/// point(y + 5)
/// };
/// assert_eq!(l, identity(52));
/// }