mirror of
				https://github.com/rust-lang/rust-analyzer.git
				synced 2025-10-30 11:37:31 +00:00 
			
		
		
		
	fix: Hide dyn inlay hints for incomplete impls
				
					
				
			This commit is contained in:
		
							parent
							
								
									6acff6c1f8
								
							
						
					
					
						commit
						4cf958cfd4
					
				
					 1 changed files with 9 additions and 3 deletions
				
			
		|  | @ -22,9 +22,14 @@ pub(super) fn hints( | |||
|             let parent = paren.as_ref().and_then(|it| it.parent()).unwrap_or(parent); | ||||
|             if ast::TypeBound::can_cast(parent.kind()) | ||||
|                 || ast::TypeAnchor::can_cast(parent.kind()) | ||||
|                 || ast::Impl::cast(parent) | ||||
|                     .and_then(|it| it.trait_()) | ||||
|                     .is_some_and(|it| it.syntax() == path.syntax()) | ||||
|                 || ast::Impl::cast(parent).is_some_and(|it| { | ||||
|                     it.trait_().map_or( | ||||
|                         // only show it for impl type if the impl is not incomplete, otherwise we
 | ||||
|                         // are likely typing a trait impl
 | ||||
|                         it.assoc_item_list().is_none_or(|it| it.l_curly_token().is_none()), | ||||
|                         |trait_| trait_.syntax() == path.syntax(), | ||||
|                     ) | ||||
|                 }) | ||||
|             { | ||||
|                 return None; | ||||
|             } | ||||
|  | @ -85,6 +90,7 @@ impl T {} | |||
|   // ^ dyn
 | ||||
| impl T for (T) {} | ||||
|         // ^^^ dyn
 | ||||
| impl T | ||||
| "#,
 | ||||
|         ); | ||||
|     } | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Lukas Wirth
						Lukas Wirth