Lines Matching refs:Expr

4 use crate::expr::Expr;
19 pub(crate) fn requires_semi_to_be_stmt(expr: &Expr) -> bool { in requires_semi_to_be_stmt()
21 Expr::Macro(expr) => !expr.mac.delimiter.is_brace(), in requires_semi_to_be_stmt()
27 pub(crate) fn requires_comma_to_be_match_arm(expr: &Expr) -> bool { in requires_comma_to_be_match_arm()
29 Expr::If(_) in requires_comma_to_be_match_arm()
30 | Expr::Match(_) in requires_comma_to_be_match_arm()
31 | Expr::Block(_) | Expr::Unsafe(_) // both under ExprKind::Block in rustc in requires_comma_to_be_match_arm()
32 | Expr::While(_) in requires_comma_to_be_match_arm()
33 | Expr::Loop(_) in requires_comma_to_be_match_arm()
34 | Expr::ForLoop(_) in requires_comma_to_be_match_arm()
35 | Expr::TryBlock(_) in requires_comma_to_be_match_arm()
36 | Expr::Const(_) => false, in requires_comma_to_be_match_arm()
38 Expr::Array(_) in requires_comma_to_be_match_arm()
39 | Expr::Assign(_) in requires_comma_to_be_match_arm()
40 | Expr::Async(_) in requires_comma_to_be_match_arm()
41 | Expr::Await(_) in requires_comma_to_be_match_arm()
42 | Expr::Binary(_) in requires_comma_to_be_match_arm()
43 | Expr::Break(_) in requires_comma_to_be_match_arm()
44 | Expr::Call(_) in requires_comma_to_be_match_arm()
45 | Expr::Cast(_) in requires_comma_to_be_match_arm()
46 | Expr::Closure(_) in requires_comma_to_be_match_arm()
47 | Expr::Continue(_) in requires_comma_to_be_match_arm()
48 | Expr::Field(_) in requires_comma_to_be_match_arm()
49 | Expr::Group(_) in requires_comma_to_be_match_arm()
50 | Expr::Index(_) in requires_comma_to_be_match_arm()
51 | Expr::Infer(_) in requires_comma_to_be_match_arm()
52 | Expr::Let(_) in requires_comma_to_be_match_arm()
53 | Expr::Lit(_) in requires_comma_to_be_match_arm()
54 | Expr::Macro(_) in requires_comma_to_be_match_arm()
55 | Expr::MethodCall(_) in requires_comma_to_be_match_arm()
56 | Expr::Paren(_) in requires_comma_to_be_match_arm()
57 | Expr::Path(_) in requires_comma_to_be_match_arm()
58 | Expr::Range(_) in requires_comma_to_be_match_arm()
59 | Expr::RawAddr(_) in requires_comma_to_be_match_arm()
60 | Expr::Reference(_) in requires_comma_to_be_match_arm()
61 | Expr::Repeat(_) in requires_comma_to_be_match_arm()
62 | Expr::Return(_) in requires_comma_to_be_match_arm()
63 | Expr::Struct(_) in requires_comma_to_be_match_arm()
64 | Expr::Try(_) in requires_comma_to_be_match_arm()
65 | Expr::Tuple(_) in requires_comma_to_be_match_arm()
66 | Expr::Unary(_) in requires_comma_to_be_match_arm()
67 | Expr::Yield(_) in requires_comma_to_be_match_arm()
68 | Expr::Verbatim(_) => true, in requires_comma_to_be_match_arm()
132 pub(crate) fn expr_leading_label(mut expr: &Expr) -> bool { in expr_leading_label()
135 Expr::Block(e) => return e.label.is_some(), in expr_leading_label()
136 Expr::ForLoop(e) => return e.label.is_some(), in expr_leading_label()
137 Expr::Loop(e) => return e.label.is_some(), in expr_leading_label()
138 Expr::While(e) => return e.label.is_some(), in expr_leading_label()
140 Expr::Assign(e) => expr = &e.left, in expr_leading_label()
141 Expr::Await(e) => expr = &e.base, in expr_leading_label()
142 Expr::Binary(e) => expr = &e.left, in expr_leading_label()
143 Expr::Call(e) => expr = &e.func, in expr_leading_label()
144 Expr::Cast(e) => expr = &e.expr, in expr_leading_label()
145 Expr::Field(e) => expr = &e.base, in expr_leading_label()
146 Expr::Index(e) => expr = &e.expr, in expr_leading_label()
147 Expr::MethodCall(e) => expr = &e.receiver, in expr_leading_label()
148 Expr::Range(e) => match &e.start { in expr_leading_label()
152 Expr::Try(e) => expr = &e.expr, in expr_leading_label()
154 Expr::Array(_) in expr_leading_label()
155 | Expr::Async(_) in expr_leading_label()
156 | Expr::Break(_) in expr_leading_label()
157 | Expr::Closure(_) in expr_leading_label()
158 | Expr::Const(_) in expr_leading_label()
159 | Expr::Continue(_) in expr_leading_label()
160 | Expr::Group(_) in expr_leading_label()
161 | Expr::If(_) in expr_leading_label()
162 | Expr::Infer(_) in expr_leading_label()
163 | Expr::Let(_) in expr_leading_label()
164 | Expr::Lit(_) in expr_leading_label()
165 | Expr::Macro(_) in expr_leading_label()
166 | Expr::Match(_) in expr_leading_label()
167 | Expr::Paren(_) in expr_leading_label()
168 | Expr::Path(_) in expr_leading_label()
169 | Expr::RawAddr(_) in expr_leading_label()
170 | Expr::Reference(_) in expr_leading_label()
171 | Expr::Repeat(_) in expr_leading_label()
172 | Expr::Return(_) in expr_leading_label()
173 | Expr::Struct(_) in expr_leading_label()
174 | Expr::TryBlock(_) in expr_leading_label()
175 | Expr::Tuple(_) in expr_leading_label()
176 | Expr::Unary(_) in expr_leading_label()
177 | Expr::Unsafe(_) in expr_leading_label()
178 | Expr::Verbatim(_) in expr_leading_label()
179 | Expr::Yield(_) => return false, in expr_leading_label()
186 pub(crate) fn expr_trailing_brace(mut expr: &Expr) -> bool { in expr_trailing_brace()
189 Expr::Async(_) in expr_trailing_brace()
190 | Expr::Block(_) in expr_trailing_brace()
191 | Expr::Const(_) in expr_trailing_brace()
192 | Expr::ForLoop(_) in expr_trailing_brace()
193 | Expr::If(_) in expr_trailing_brace()
194 | Expr::Loop(_) in expr_trailing_brace()
195 | Expr::Match(_) in expr_trailing_brace()
196 | Expr::Struct(_) in expr_trailing_brace()
197 | Expr::TryBlock(_) in expr_trailing_brace()
198 | Expr::Unsafe(_) in expr_trailing_brace()
199 | Expr::While(_) => return true, in expr_trailing_brace()
201 Expr::Assign(e) => expr = &e.right, in expr_trailing_brace()
202 Expr::Binary(e) => expr = &e.right, in expr_trailing_brace()
203 Expr::Break(e) => match &e.expr { in expr_trailing_brace()
207 Expr::Cast(e) => return type_trailing_brace(&e.ty), in expr_trailing_brace()
208 Expr::Closure(e) => expr = &e.body, in expr_trailing_brace()
209 Expr::Let(e) => expr = &e.expr, in expr_trailing_brace()
210 Expr::Macro(e) => return e.mac.delimiter.is_brace(), in expr_trailing_brace()
211 Expr::Range(e) => match &e.end { in expr_trailing_brace()
215 Expr::RawAddr(e) => expr = &e.expr, in expr_trailing_brace()
216 Expr::Reference(e) => expr = &e.expr, in expr_trailing_brace()
217 Expr::Return(e) => match &e.expr { in expr_trailing_brace()
221 Expr::Unary(e) => expr = &e.expr, in expr_trailing_brace()
222 Expr::Verbatim(e) => return tokens_trailing_brace(e), in expr_trailing_brace()
223 Expr::Yield(e) => match &e.expr { in expr_trailing_brace()
228 Expr::Array(_) in expr_trailing_brace()
229 | Expr::Await(_) in expr_trailing_brace()
230 | Expr::Call(_) in expr_trailing_brace()
231 | Expr::Continue(_) in expr_trailing_brace()
232 | Expr::Field(_) in expr_trailing_brace()
233 | Expr::Group(_) in expr_trailing_brace()
234 | Expr::Index(_) in expr_trailing_brace()
235 | Expr::Infer(_) in expr_trailing_brace()
236 | Expr::Lit(_) in expr_trailing_brace()
237 | Expr::MethodCall(_) in expr_trailing_brace()
238 | Expr::Paren(_) in expr_trailing_brace()
239 | Expr::Path(_) in expr_trailing_brace()
240 | Expr::Repeat(_) in expr_trailing_brace()
241 | Expr::Try(_) in expr_trailing_brace()
242 | Expr::Tuple(_) => return false, in expr_trailing_brace()