aboutsummaryrefslogtreecommitdiff
path: root/helix-core/tests/data/indent/rust.rs
blob: 010745e0d7087e975e6484cc16a9e55a47370e0c (plain) (blame)
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
use std::{
    io::{self, stdout, Stdout, Write},
    path::PathBuf,
    sync::Arc,
    time::Duration,
};
mod test {
    fn hello_world() {
        1 + 1;

        let does_indentation_work = 1;

        let mut really_long_variable_name_using_up_the_line =
            really_long_fn_that_should_definitely_go_on_the_next_line();
        really_long_variable_name_using_up_the_line =
            really_long_fn_that_should_definitely_go_on_the_next_line();
        really_long_variable_name_using_up_the_line |=
            really_long_fn_that_should_definitely_go_on_the_next_line();

        let (
            a_long_variable_name_in_this_tuple,
            b_long_variable_name_in_this_tuple,
            c_long_variable_name_in_this_tuple,
            d_long_variable_name_in_this_tuple,
            e_long_variable_name_in_this_tuple,
        ): (usize, usize, usize, usize, usize) =
            if really_long_fn_that_should_definitely_go_on_the_next_line() {
                (
                    03294239434,
                    1213412342314,
                    21231234134,
                    834534234549898789,
                    9879234234543853457,
                )
            } else {
                (0, 1, 2, 3, 4)
            };

        let test_function = function_with_param(this_param,
            that_param
        );

        let test_function = function_with_param(
            this_param,
            that_param
        );

        let test_function = function_with_proper_indent(param1,
            param2,
        );

        let selection = Selection::new(
            changes
                .clone()
                .map(|(start, end, text): (usize, usize, Option<Tendril>)| {
                    let len = text.map(|text| text.len()).unwrap() - 1; // minus newline
                    let pos = start + len;
                    Range::new(pos, pos)
                })
                .collect(),
            0,
        );

        return;
    }
}

impl<A, D> MyTrait<A, D> for YourType
where
    A: TraitB + TraitC,
    D: TraitE + TraitF,
{

}
#[test]
//
match test {
    Some(a) => 1,
    None => {
        unimplemented!()
    }
}
std::panic::set_hook(Box::new(move |info| {
    hook(info);
}));

{ { {
    1
}}}

pub fn change<I>(document: &Document, changes: I) -> Self
where
    I: IntoIterator<Item = Change> + ExactSizeIterator,
{
    [
        1,
        2,
        3,
    ];
    (
        1,
        2
    );
    true
}