Struct ra_ap_hir::InFile [−][src]
pub struct InFile<T> { pub file_id: HirFileId, pub value: T, }
Expand description
InFile<T>
stores a value of T
inside a particular file/syntax tree.
Typical usages are:
InFile<SyntaxNode>
– syntax node in a fileInFile<ast::FnDef>
– ast node in a fileInFile<TextSize>
– offset in a file
Fields
file_id: HirFileId
value: T
Implementations
pub fn ancestors_with_macros(
self,
db: &dyn AstDatabase
) -> impl Iterator<Item = InFile<SyntaxNode<RustLanguage>>>
pub fn ancestors_with_macros(
self,
db: &dyn AstDatabase
) -> impl Iterator<Item = InFile<SyntaxNode<RustLanguage>>>
Trait Implementations
pub fn as_call_id_with_errors(
&self,
db: &dyn DefDatabase,
krate: CrateId,
resolver: impl Fn(ModPath) -> Option<MacroDefId>,
error_sink: &mut dyn FnMut(ExpandError)
) -> Result<Result<MacroCallId, ErrorEmitted>, UnresolvedMacro>
fn as_call_id(
&self,
db: &dyn DefDatabase,
krate: CrateId,
resolver: impl Fn(ModPath) -> Option<MacroDefId>
) -> Option<MacroCallId>
Auto Trait Implementations
impl<T> RefUnwindSafe for InFile<T> where
T: RefUnwindSafe,
impl<T> UnwindSafe for InFile<T> where
T: UnwindSafe,
Blanket Implementations
Mutably borrows from an owned value. Read more
fn cast<U>(self, interner: &<U as HasInterner>::Interner) -> U where
Self: CastTo<U>,
U: HasInterner,
fn cast<U>(self, interner: &<U as HasInterner>::Interner) -> U where
Self: CastTo<U>,
U: HasInterner,
Cast a value to type U
using CastTo
.
Compare self to key
and return true
if they are equal.
Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
impl<T> Any for T where
T: Any,