rf_core/lang/
macros.rs

1#[macro_export]
2macro_rules! lift {
3    ($x:expr) => {{
4        |vm| (vm, $x)
5    }};
6}
7
8#[macro_export]
9macro_rules! nbr {
10    ($x:expr) => {{
11        |vm| nbr(vm, $x)
12    }};
13}
14
15#[macro_export]
16macro_rules! rep {
17    ($init:expr, $fun:expr) => {{
18        |vm| rep(vm, $init, $fun)
19    }};
20}
21
22#[macro_export]
23macro_rules! foldhood {
24    ($init:expr, $aggr:expr, $expr:expr) => {{
25        |vm| foldhood(vm, $init, $aggr, $expr)
26    }};
27}
28
29#[macro_export]
30macro_rules! foldhood_plus {
31    ($init:expr, $aggr:expr, $expr:expr) => {{
32        |vm| foldhood_plus(vm, $init, $aggr, $expr)
33    }};
34}
35
36#[macro_export]
37macro_rules! mux {
38    ($cond:expr, $th:expr, $el:expr) => {{
39        |vm| mux(vm, $cond, $th, $el)
40    }};
41}
42
43#[macro_export]
44macro_rules! mid {
45    () => {{
46        |vm| mid(vm)
47    }};
48}