aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_syntax/test_data/parser/inline/ok/0042_call_expr.rast
blob: e8003bf91d1f50e59cbba986a9bb4f9f1b4bb96f (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
140
141
142
143
144
145
146
147
148
SOURCE_FILE@[0; 118)
  FN_DEF@[0; 117)
    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_EXPR@[9; 117)
      BLOCK@[9; 117)
        L_CURLY@[9; 10) "{"
        WHITESPACE@[10; 15) "\n    "
        LET_STMT@[15; 27)
          LET_KW@[15; 18) "let"
          WHITESPACE@[18; 19) " "
          PLACEHOLDER_PAT@[19; 20)
            UNDERSCORE@[19; 20) "_"
          WHITESPACE@[20; 21) " "
          EQ@[21; 22) "="
          WHITESPACE@[22; 23) " "
          CALL_EXPR@[23; 26)
            PATH_EXPR@[23; 24)
              PATH@[23; 24)
                PATH_SEGMENT@[23; 24)
                  NAME_REF@[23; 24)
                    IDENT@[23; 24) "f"
            ARG_LIST@[24; 26)
              L_PAREN@[24; 25) "("
              R_PAREN@[25; 26) ")"
          SEMI@[26; 27) ";"
        WHITESPACE@[27; 32) "\n    "
        LET_STMT@[32; 54)
          LET_KW@[32; 35) "let"
          WHITESPACE@[35; 36) " "
          PLACEHOLDER_PAT@[36; 37)
            UNDERSCORE@[36; 37) "_"
          WHITESPACE@[37; 38) " "
          EQ@[38; 39) "="
          WHITESPACE@[39; 40) " "
          CALL_EXPR@[40; 53)
            CALL_EXPR@[40; 46)
              CALL_EXPR@[40; 43)
                PATH_EXPR@[40; 41)
                  PATH@[40; 41)
                    PATH_SEGMENT@[40; 41)
                      NAME_REF@[40; 41)
                        IDENT@[40; 41) "f"
                ARG_LIST@[41; 43)
                  L_PAREN@[41; 42) "("
                  R_PAREN@[42; 43) ")"
              ARG_LIST@[43; 46)
                L_PAREN@[43; 44) "("
                LITERAL@[44; 45)
                  INT_NUMBER@[44; 45) "1"
                R_PAREN@[45; 46) ")"
            ARG_LIST@[46; 53)
              L_PAREN@[46; 47) "("
              LITERAL@[47; 48)
                INT_NUMBER@[47; 48) "1"
              COMMA@[48; 49) ","
              WHITESPACE@[49; 50) " "
              LITERAL@[50; 51)
                INT_NUMBER@[50; 51) "2"
              COMMA@[51; 52) ","
              R_PAREN@[52; 53) ")"
          SEMI@[53; 54) ";"
        WHITESPACE@[54; 59) "\n    "
        LET_STMT@[59; 84)
          LET_KW@[59; 62) "let"
          WHITESPACE@[62; 63) " "
          PLACEHOLDER_PAT@[63; 64)
            UNDERSCORE@[63; 64) "_"
          WHITESPACE@[64; 65) " "
          EQ@[65; 66) "="
          WHITESPACE@[66; 67) " "
          CALL_EXPR@[67; 83)
            PATH_EXPR@[67; 68)
              PATH@[67; 68)
                PATH_SEGMENT@[67; 68)
                  NAME_REF@[67; 68)
                    IDENT@[67; 68) "f"
            ARG_LIST@[68; 83)
              L_PAREN@[68; 69) "("
              CALL_EXPR@[69; 82)
                PATH_EXPR@[69; 80)
                  PATH@[69; 80)
                    PATH@[69; 74)
                      PATH_SEGMENT@[69; 74)
                        L_ANGLE@[69; 70) "<"
                        PATH_TYPE@[70; 73)
                          PATH@[70; 73)
                            PATH_SEGMENT@[70; 73)
                              NAME_REF@[70; 73)
                                IDENT@[70; 73) "Foo"
                        R_ANGLE@[73; 74) ">"
                    COLONCOLON@[74; 76) "::"
                    PATH_SEGMENT@[76; 80)
                      NAME_REF@[76; 80)
                        IDENT@[76; 80) "func"
                ARG_LIST@[80; 82)
                  L_PAREN@[80; 81) "("
                  R_PAREN@[81; 82) ")"
              R_PAREN@[82; 83) ")"
          SEMI@[83; 84) ";"
        WHITESPACE@[84; 89) "\n    "
        EXPR_STMT@[89; 115)
          CALL_EXPR@[89; 114)
            PATH_EXPR@[89; 90)
              PATH@[89; 90)
                PATH_SEGMENT@[89; 90)
                  NAME_REF@[89; 90)
                    IDENT@[89; 90) "f"
            ARG_LIST@[90; 114)
              L_PAREN@[90; 91) "("
              CALL_EXPR@[91; 113)
                PATH_EXPR@[91; 111)
                  PATH@[91; 111)
                    PATH@[91; 105)
                      PATH_SEGMENT@[91; 105)
                        L_ANGLE@[91; 92) "<"
                        PATH_TYPE@[92; 95)
                          PATH@[92; 95)
                            PATH_SEGMENT@[92; 95)
                              NAME_REF@[92; 95)
                                IDENT@[92; 95) "Foo"
                        WHITESPACE@[95; 96) " "
                        AS_KW@[96; 98) "as"
                        WHITESPACE@[98; 99) " "
                        PATH_TYPE@[99; 104)
                          PATH@[99; 104)
                            PATH_SEGMENT@[99; 104)
                              NAME_REF@[99; 104)
                                IDENT@[99; 104) "Trait"
                        R_ANGLE@[104; 105) ">"
                    COLONCOLON@[105; 107) "::"
                    PATH_SEGMENT@[107; 111)
                      NAME_REF@[107; 111)
                        IDENT@[107; 111) "func"
                ARG_LIST@[111; 113)
                  L_PAREN@[111; 112) "("
                  R_PAREN@[112; 113) ")"
              R_PAREN@[113; 114) ")"
          SEMI@[114; 115) ";"
        WHITESPACE@[115; 116) "\n"
        R_CURLY@[116; 117) "}"
  WHITESPACE@[117; 118) "\n"