mirror of
https://github.com/rust-lang/rust-analyzer.git
synced 2025-09-02 00:27:31 +00:00
Fix for-loop expressions breaking with BlockExpr iterable
This commit is contained in:
parent
b9fa37f5b4
commit
c93983e76f
4 changed files with 44 additions and 5 deletions
|
@ -850,7 +850,6 @@ pub struct ForExpr {
|
|||
pub(crate) syntax: SyntaxNode,
|
||||
}
|
||||
impl ast::HasAttrs for ForExpr {}
|
||||
impl ast::HasLoopBody for ForExpr {}
|
||||
impl ForExpr {
|
||||
pub fn for_token(&self) -> Option<SyntaxToken> { support::token(&self.syntax, T![for]) }
|
||||
pub fn pat(&self) -> Option<Pat> { support::child(&self.syntax) }
|
||||
|
|
|
@ -754,6 +754,15 @@ impl ast::GenericParamList {
|
|||
}
|
||||
}
|
||||
|
||||
impl ast::HasLoopBody for ast::ForExpr {
|
||||
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::HasDocComments for ast::SourceFile {}
|
||||
impl ast::HasDocComments for ast::Fn {}
|
||||
impl ast::HasDocComments for ast::Struct {}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue