aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_syntax/test_data/parser/inline/ok/0006_self_param.txt
blob: 757ac092a00b5e6f93cdae2a696a8d23d998d931 (plain)
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
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
SOURCE_FILE@[0; 128)
  IMPL_DEF@[0; 127)
    IMPL_KW@[0; 4) "impl"
    WHITESPACE@[4; 5) " "
    PATH_TYPE@[5; 6)
      PATH@[5; 6)
        PATH_SEGMENT@[5; 6)
          NAME_REF@[5; 6)
            IDENT@[5; 6) "S"
    WHITESPACE@[6; 7) " "
    ITEM_LIST@[7; 127)
      L_CURLY@[7; 8) "{"
      WHITESPACE@[8; 13) "\n    "
      FN_DEF@[13; 26)
        FN_KW@[13; 15) "fn"
        WHITESPACE@[15; 16) " "
        NAME@[16; 17)
          IDENT@[16; 17) "a"
        PARAM_LIST@[17; 23)
          L_PAREN@[17; 18) "("
          SELF_PARAM@[18; 22)
            SELF_KW@[18; 22) "self"
          R_PAREN@[22; 23) ")"
        WHITESPACE@[23; 24) " "
        BLOCK_EXPR@[24; 26)
          BLOCK@[24; 26)
            L_CURLY@[24; 25) "{"
            R_CURLY@[25; 26) "}"
      WHITESPACE@[26; 31) "\n    "
      FN_DEF@[31; 46)
        FN_KW@[31; 33) "fn"
        WHITESPACE@[33; 34) " "
        NAME@[34; 35)
          IDENT@[34; 35) "b"
        PARAM_LIST@[35; 43)
          L_PAREN@[35; 36) "("
          SELF_PARAM@[36; 41)
            AMP@[36; 37) "&"
            SELF_KW@[37; 41) "self"
          COMMA@[41; 42) ","
          R_PAREN@[42; 43) ")"
        WHITESPACE@[43; 44) " "
        BLOCK_EXPR@[44; 46)
          BLOCK@[44; 46)
            L_CURLY@[44; 45) "{"
            R_CURLY@[45; 46) "}"
      WHITESPACE@[46; 51) "\n    "
      FN_DEF@[51; 69)
        FN_KW@[51; 53) "fn"
        WHITESPACE@[53; 54) " "
        NAME@[54; 55)
          IDENT@[54; 55) "c"
        PARAM_LIST@[55; 66)
          L_PAREN@[55; 56) "("
          SELF_PARAM@[56; 64)
            AMP@[56; 57) "&"
            LIFETIME@[57; 59) "\'a"
            WHITESPACE@[59; 60) " "
            SELF_KW@[60; 64) "self"
          COMMA@[64; 65) ","
          R_PAREN@[65; 66) ")"
        WHITESPACE@[66; 67) " "
        BLOCK_EXPR@[67; 69)
          BLOCK@[67; 69)
            L_CURLY@[67; 68) "{"
            R_CURLY@[68; 69) "}"
      WHITESPACE@[69; 74) "\n    "
      FN_DEF@[74; 103)
        FN_KW@[74; 76) "fn"
        WHITESPACE@[76; 77) " "
        NAME@[77; 78)
          IDENT@[77; 78) "d"
        PARAM_LIST@[78; 100)
          L_PAREN@[78; 79) "("
          SELF_PARAM@[79; 91)
            AMP@[79; 80) "&"
            LIFETIME@[80; 82) "\'a"
            WHITESPACE@[82; 83) " "
            MUT_KW@[83; 86) "mut"
            WHITESPACE@[86; 87) " "
            SELF_KW@[87; 91) "self"
          COMMA@[91; 92) ","
          WHITESPACE@[92; 93) " "
          PARAM@[93; 99)
            BIND_PAT@[93; 94)
              NAME@[93; 94)
                IDENT@[93; 94) "x"
            COLON@[94; 95) ":"
            WHITESPACE@[95; 96) " "
            PATH_TYPE@[96; 99)
              PATH@[96; 99)
                PATH_SEGMENT@[96; 99)
                  NAME_REF@[96; 99)
                    IDENT@[96; 99) "i32"
          R_PAREN@[99; 100) ")"
        WHITESPACE@[100; 101) " "
        BLOCK_EXPR@[101; 103)
          BLOCK@[101; 103)
            L_CURLY@[101; 102) "{"
            R_CURLY@[102; 103) "}"
      WHITESPACE@[103; 108) "\n    "
      FN_DEF@[108; 125)
        FN_KW@[108; 110) "fn"
        WHITESPACE@[110; 111) " "
        NAME@[111; 112)
          IDENT@[111; 112) "e"
        PARAM_LIST@[112; 122)
          L_PAREN@[112; 113) "("
          SELF_PARAM@[113; 121)
            MUT_KW@[113; 116) "mut"
            WHITESPACE@[116; 117) " "
            SELF_KW@[117; 121) "self"
          R_PAREN@[121; 122) ")"
        WHITESPACE@[122; 123) " "
        BLOCK_EXPR@[123; 125)
          BLOCK@[123; 125)
            L_CURLY@[123; 124) "{"
            R_CURLY@[124; 125) "}"
      WHITESPACE@[125; 126) "\n"
      R_CURLY@[126; 127) "}"
  WHITESPACE@[127; 128) "\n"