aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_syntax/tests/data/parser/inline/ok/0106_lambda_expr.txt
blob: a05218118234a4b6af3a332e31d76665f62fb35e (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
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
SOURCE_FILE@[0; 134)
  FN_DEF@[0; 133)
    FN_KW@[0; 2) "fn"
    WHITESPACE@[2; 3) " "
    NAME@[3; 6)
      IDENT@[3; 6) "foo"
    PARAM_LIST@[6; 8)
      L_PAREN@[6; 7) "("
      R_PAREN@[7; 8) ")"
    WHITESPACE@[8; 9) " "
    BLOCK@[9; 133)
      L_CURLY@[9; 10) "{"
      WHITESPACE@[10; 15) "\n    "
      EXPR_STMT@[15; 21)
        LAMBDA_EXPR@[15; 20)
          PARAM_LIST@[15; 17)
            PIPE@[15; 16) "|"
            PIPE@[16; 17) "|"
          WHITESPACE@[17; 18) " "
          TUPLE_EXPR@[18; 20)
            L_PAREN@[18; 19) "("
            R_PAREN@[19; 20) ")"
        SEMI@[20; 21) ";"
      WHITESPACE@[21; 26) "\n    "
      EXPR_STMT@[26; 43)
        LAMBDA_EXPR@[26; 42)
          PARAM_LIST@[26; 28)
            PIPE@[26; 27) "|"
            PIPE@[27; 28) "|"
          WHITESPACE@[28; 29) " "
          RET_TYPE@[29; 35)
            THIN_ARROW@[29; 31) "->"
            WHITESPACE@[31; 32) " "
            PATH_TYPE@[32; 35)
              PATH@[32; 35)
                PATH_SEGMENT@[32; 35)
                  NAME_REF@[32; 35)
                    IDENT@[32; 35) "i32"
          WHITESPACE@[35; 36) " "
          BLOCK_EXPR@[36; 42)
            BLOCK@[36; 42)
              L_CURLY@[36; 37) "{"
              WHITESPACE@[37; 38) " "
              LITERAL@[38; 40)
                INT_NUMBER@[38; 40) "92"
              WHITESPACE@[40; 41) " "
              R_CURLY@[41; 42) "}"
        SEMI@[42; 43) ";"
      WHITESPACE@[43; 48) "\n    "
      EXPR_STMT@[48; 54)
        LAMBDA_EXPR@[48; 53)
          PARAM_LIST@[48; 51)
            PIPE@[48; 49) "|"
            PARAM@[49; 50)
              BIND_PAT@[49; 50)
                NAME@[49; 50)
                  IDENT@[49; 50) "x"
            PIPE@[50; 51) "|"
          WHITESPACE@[51; 52) " "
          PATH_EXPR@[52; 53)
            PATH@[52; 53)
              PATH_SEGMENT@[52; 53)
                NAME_REF@[52; 53)
                  IDENT@[52; 53) "x"
        SEMI@[53; 54) ";"
      WHITESPACE@[54; 59) "\n    "
      EXPR_STMT@[59; 76)
        LAMBDA_EXPR@[59; 75)
          MOVE_KW@[59; 63) "move"
          WHITESPACE@[63; 64) " "
          PARAM_LIST@[64; 73)
            PIPE@[64; 65) "|"
            PARAM@[65; 71)
              BIND_PAT@[65; 66)
                NAME@[65; 66)
                  IDENT@[65; 66) "x"
              COLON@[66; 67) ":"
              WHITESPACE@[67; 68) " "
              PATH_TYPE@[68; 71)
                PATH@[68; 71)
                  PATH_SEGMENT@[68; 71)
                    NAME_REF@[68; 71)
                      IDENT@[68; 71) "i32"
            COMMA@[71; 72) ","
            PIPE@[72; 73) "|"
          WHITESPACE@[73; 74) " "
          PATH_EXPR@[74; 75)
            PATH@[74; 75)
              PATH_SEGMENT@[74; 75)
                NAME_REF@[74; 75)
                  IDENT@[74; 75) "x"
        SEMI@[75; 76) ";"
      WHITESPACE@[76; 81) "\n    "
      EXPR_STMT@[81; 93)
        LAMBDA_EXPR@[81; 92)
          ASYNC_KW@[81; 86) "async"
          WHITESPACE@[86; 87) " "
          PARAM_LIST@[87; 89)
            PIPE@[87; 88) "|"
            PIPE@[88; 89) "|"
          WHITESPACE@[89; 90) " "
          BLOCK_EXPR@[90; 92)
            BLOCK@[90; 92)
              L_CURLY@[90; 91) "{"
              R_CURLY@[91; 92) "}"
        SEMI@[92; 93) ";"
      WHITESPACE@[93; 98) "\n    "
      EXPR_STMT@[98; 109)
        LAMBDA_EXPR@[98; 108)
          MOVE_KW@[98; 102) "move"
          WHITESPACE@[102; 103) " "
          PARAM_LIST@[103; 105)
            PIPE@[103; 104) "|"
            PIPE@[104; 105) "|"
          WHITESPACE@[105; 106) " "
          BLOCK_EXPR@[106; 108)
            BLOCK@[106; 108)
              L_CURLY@[106; 107) "{"
              R_CURLY@[107; 108) "}"
        SEMI@[108; 109) ";"
      WHITESPACE@[109; 114) "\n    "
      EXPR_STMT@[114; 131)
        LAMBDA_EXPR@[114; 130)
          ASYNC_KW@[114; 119) "async"
          WHITESPACE@[119; 120) " "
          MOVE_KW@[120; 124) "move"
          WHITESPACE@[124; 125) " "
          PARAM_LIST@[125; 127)
            PIPE@[125; 126) "|"
            PIPE@[126; 127) "|"
          WHITESPACE@[127; 128) " "
          BLOCK_EXPR@[128; 130)
            BLOCK@[128; 130)
              L_CURLY@[128; 129) "{"
              R_CURLY@[129; 130) "}"
        SEMI@[130; 131) ";"
      WHITESPACE@[131; 132) "\n"
      R_CURLY@[132; 133) "}"
  WHITESPACE@[133; 134) "\n"