1#[doc(hidden)]
2#[macro_export]
3macro_rules! eqrel_binary_rel {
4 (($col1: ty, $col2: ty), $indices: expr, ser, ()) => {
5 $crate::fake_vec::FakeVec<($col1, $col2)>
7 };
8
9 (($col1: ty, $col2: ty), $indices: expr, par, ()) => {
11 $crate::fake_vec::FakeVec<($col1, $col2)>
13 };
14}
15pub use eqrel_binary_rel as rel;
16
17#[doc(hidden)]
18#[macro_export]
19macro_rules! eqrel_binary_rel_full_ind {
20 (($col1: ty, $col2: ty), $indices: expr, ser, (), $key: ty, $val: ty) => {
21 $crate::eqrel_ind::ToEqRelInd0_1<$col1>
22 };
23
24 (($col1: ty, $col2: ty), $indices: expr, par, (), $key: ty, $val: ty) => {
26 $crate::ceqrel_ind::ToEqRelInd0_1<$col1>
27 };
28}
29pub use eqrel_binary_rel_full_ind as rel_full_ind;
30
31#[doc(hidden)]
32#[macro_export]
33macro_rules! eqrel_binary_rel_ind {
34 (($col1: ty, $col2: ty), $indices: expr, ser, (), [0], $key: ty, $val: ty) => {
35 $crate::eqrel_ind::ToEqRelInd0<$col1>
36 };
37 (($col1: ty, $col2: ty), $indices: expr, ser, (), [1], $key: ty, $val: ty) => {
38 $crate::eqrel_ind::ToEqRelInd0<$col1>
39 };
40 (($col1: ty, $col2: ty), $indices: expr, ser, (), [], $key: ty, $val: ty) => {
41 $crate::eqrel_ind::ToEqRelIndNone<$col1>
42 };
43
44 (($col1: ty, $col2: ty), $indices: expr, par, (), [0], $key: ty, $val: ty) => {
46 $crate::ceqrel_ind::ToEqRelInd0<$col1>
47 };
48 (($col1: ty, $col2: ty), $indices: expr, par, (), [1], $key: ty, $val: ty) => {
49 $crate::ceqrel_ind::ToEqRelInd0<$col1>
50 };
51 (($col1: ty, $col2: ty), $indices: expr, par, (), [], $key: ty, $val: ty) => {
52 $crate::ceqrel_ind::ToEqRelIndNone<$col1>
53 };
54}
55pub use eqrel_binary_rel_ind as rel_ind;
56
57#[doc(hidden)]
58#[macro_export]
59macro_rules! eqrel_binary_rel_ind_common {
60 (($col1: ty, $col2: ty), $indices: expr, ser, ()) => {
61 $crate::eqrel_ind::EqRelIndCommon<$col1>
62 };
63
64 (($col1: ty, $col2: ty), $indices: expr, par, ()) => {
66 $crate::ceqrel_ind::CEqRelIndCommon<$col1>
67 };
68}
69pub use eqrel_binary_rel_ind_common as rel_ind_common;
70
71fn _test_macros() {
72 let _x: rel!((u32, u32), [[0, 1], [0]], ser, ());
73 let _full_ind: rel_full_ind!((u32, u32), [[0, 1], [0]], ser, (), (u32, u32), ());
74 let _ind_0: rel_ind!((u32, u32), [[0, 1], [0]], ser, (), [0], (u32,), (u32,));
75}