mirror of
				https://github.com/rust-lang/rust-analyzer.git
				synced 2025-10-31 12:04:43 +00:00 
			
		
		
		
	fix: Don't force draw a dependency edge to the real_span_map query
This commit is contained in:
		
							parent
							
								
									bd0ffb0248
								
							
						
					
					
						commit
						c04c0dd5ba
					
				
					 16 changed files with 125 additions and 114 deletions
				
			
		|  | @ -2,8 +2,8 @@ | |||
| 
 | ||||
| use std::iter; | ||||
| 
 | ||||
| use hir_expand::{span_map::SpanMapRef, InFile}; | ||||
| use la_arena::ArenaMap; | ||||
| use span::SyntaxContextId; | ||||
| use syntax::ast; | ||||
| use triomphe::Arc; | ||||
| 
 | ||||
|  | @ -34,36 +34,25 @@ impl RawVisibility { | |||
|     } | ||||
| 
 | ||||
|     pub(crate) fn from_ast( | ||||
|         db: &dyn DefDatabase, | ||||
|         node: InFile<Option<ast::Visibility>>, | ||||
|     ) -> RawVisibility { | ||||
|         let node = match node.transpose() { | ||||
|             None => return RawVisibility::private(), | ||||
|             Some(node) => node, | ||||
|         }; | ||||
|         Self::from_ast_with_span_map(db, node.value, db.span_map(node.file_id).as_ref()) | ||||
|     } | ||||
| 
 | ||||
|     pub(crate) fn from_opt_ast_with_span_map( | ||||
|         db: &dyn DefDatabase, | ||||
|         node: Option<ast::Visibility>, | ||||
|         span_map: SpanMapRef<'_>, | ||||
|         span_for_range: &mut dyn FnMut(::tt::TextRange) -> SyntaxContextId, | ||||
|     ) -> RawVisibility { | ||||
|         let node = match node { | ||||
|             None => return RawVisibility::private(), | ||||
|             Some(node) => node, | ||||
|         }; | ||||
|         Self::from_ast_with_span_map(db, node, span_map) | ||||
|         Self::from_ast_with_span_map(db, node, span_for_range) | ||||
|     } | ||||
| 
 | ||||
|     fn from_ast_with_span_map( | ||||
|         db: &dyn DefDatabase, | ||||
|         node: ast::Visibility, | ||||
|         span_map: SpanMapRef<'_>, | ||||
|         span_for_range: &mut dyn FnMut(::tt::TextRange) -> SyntaxContextId, | ||||
|     ) -> RawVisibility { | ||||
|         let path = match node.kind() { | ||||
|             ast::VisibilityKind::In(path) => { | ||||
|                 let path = ModPath::from_src(db.upcast(), path, span_map); | ||||
|                 let path = ModPath::from_src(db.upcast(), path, span_for_range); | ||||
|                 match path { | ||||
|                     None => return RawVisibility::private(), | ||||
|                     Some(path) => path, | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Lukas Wirth
						Lukas Wirth