peroxide/macros/
julia_macro.rs1#[macro_export]
2macro_rules! hstack {
3 ( $x:expr, $y:expr ) => {
5 {
6 let l = $x.len();
7 let mut temp = $x;
8 temp.extend(&$y);
9 matrix(temp, l, 2, Col)
10 }
11 };
12
13 ( $x0:expr, $( $x: expr ),* ) => {
15 {
16 let r = $x0.len();
17 let mut temp0 = $x0;
18 let mut c = 1usize;
19
20 $(
21 let mut temp = $x;
22 assert_eq!(r, temp.len());
24 c += 1;
26 temp0.extend_from_slice(&temp[..]);
27 )*
28 matrix(temp0, r, c, Col)
29 }
30 };
31}
32
33#[macro_export]
34macro_rules! vstack {
35 ( $x:expr, $y:expr ) => {
37 {
38 let l = $x.len();
39 let mut temp = $x;
40 temp.extend(&$y);
41 matrix(temp, 2, l, Row)
42 }
43 };
44
45 ( $x0:expr, $( $x: expr ),* ) => {
47 {
48 let c = $x0.len();
49 let mut temp0 = $x0;
50 let mut r = 1usize;
51
52 $(
53 let mut temp = $x;
54 assert_eq!(c, temp.len());
56 r += 1;
58 temp0.extend_from_slice(&temp[..]);
59 )*
60 matrix(temp0, r, c, Row)
61 }
62 };
63}