Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/syntax/src/ast/node_ext.rs')
| -rw-r--r-- | crates/syntax/src/ast/node_ext.rs | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/crates/syntax/src/ast/node_ext.rs b/crates/syntax/src/ast/node_ext.rs index 1b916e91bf..97455abd80 100644 --- a/crates/syntax/src/ast/node_ext.rs +++ b/crates/syntax/src/ast/node_ext.rs @@ -769,6 +769,15 @@ impl ast::HasLoopBody for ast::ForExpr { } } +impl ast::HasLoopBody for ast::WhileExpr { + fn loop_body(&self) -> Option<ast::BlockExpr> { + let mut exprs = support::children(self.syntax()); + let first = exprs.next(); + let second = exprs.next(); + second.or(first) + } +} + impl ast::HasAttrs for ast::AnyHasDocComments {} impl From<ast::Adt> for ast::Item { |