pub struct LocalSource {
pub local: Local,
pub source: InFile<Either<IdentPat, SelfParam>>,
}Fields§
§local: Local§source: InFile<Either<IdentPat, SelfParam>>Implementations§
Source§impl LocalSource
impl LocalSource
pub fn as_ident_pat(&self) -> Option<&IdentPat>
pub fn into_ident_pat(self) -> Option<IdentPat>
pub fn original_file(&self, db: &dyn HirDatabase) -> EditionedFileId
pub fn file(&self) -> HirFileId
pub fn name(&self) -> Option<InFile<Name>>
pub fn syntax(&self) -> &SyntaxNode
pub fn syntax_ptr(self) -> InFile<SyntaxNodePtr>
Trait Implementations§
Source§impl HasSource for LocalSource
impl HasSource for LocalSource
type Ast = Either<IdentPat, SelfParam>
Source§fn source(self, _: &dyn HirDatabase) -> Option<InFile<Self::Ast>>
fn source(self, _: &dyn HirDatabase) -> Option<InFile<Self::Ast>>
Fetches the definition’s source node.
Using
crate::SemanticsImpl::source is preferred when working with crate::Semantics,
as that caches the parsed file in the semantics’ cache. Read moreAuto Trait Implementations§
impl Freeze for LocalSource
impl !RefUnwindSafe for LocalSource
impl !Send for LocalSource
impl !Sync for LocalSource
impl Unpin for LocalSource
impl !UnwindSafe for LocalSource
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T, R> CollectAndApply<T, R> for T
impl<T, R> CollectAndApply<T, R> for T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more