pub struct ImplGenericFunctionId {
pub impl_id: ImplId,
pub function: TraitFunctionId,
}
Expand description
A generic function of an impl.
Fields§
§impl_id: ImplId
The impl the function is in.
function: TraitFunctionId
The trait function this impl function implements.
Implementations§
source§impl ImplGenericFunctionId
impl ImplGenericFunctionId
sourcepub fn impl_function(
&self,
db: &dyn SemanticGroup,
) -> Maybe<Option<ImplFunctionId>>
pub fn impl_function( &self, db: &dyn SemanticGroup, ) -> Maybe<Option<ImplFunctionId>>
Gets the impl function language element, if self.impl_id is of a concrete impl.
pub fn format(&self, db: &dyn SemanticGroup) -> SmolStr
Trait Implementations§
source§impl Clone for ImplGenericFunctionId
impl Clone for ImplGenericFunctionId
source§fn clone(&self) -> ImplGenericFunctionId
fn clone(&self) -> ImplGenericFunctionId
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for ImplGenericFunctionId
impl Debug for ImplGenericFunctionId
source§impl DebugWithDb<dyn SemanticGroup> for ImplGenericFunctionId
impl DebugWithDb<dyn SemanticGroup> for ImplGenericFunctionId
source§impl Hash for ImplGenericFunctionId
impl Hash for ImplGenericFunctionId
source§impl PartialEq for ImplGenericFunctionId
impl PartialEq for ImplGenericFunctionId
source§impl<T: SemanticRewriter<ImplId, Error> + SemanticRewriter<TraitFunctionId, Error>, Error> SemanticObject<T, Error> for ImplGenericFunctionId
impl<T: SemanticRewriter<ImplId, Error> + SemanticRewriter<TraitFunctionId, Error>, Error> SemanticObject<T, Error> for ImplGenericFunctionId
fn default_rewrite(&mut self, rewriter: &mut T) -> Result<RewriteResult, Error>
source§impl<'a> SemanticRewriter<ImplGenericFunctionId, DiagnosticAdded> for SubstitutionRewriter<'a>
impl<'a> SemanticRewriter<ImplGenericFunctionId, DiagnosticAdded> for SubstitutionRewriter<'a>
fn internal_rewrite( &mut self, value: &mut ImplGenericFunctionId, ) -> Result<RewriteResult, DiagnosticAdded>
fn rewrite(&mut self, value: T) -> Result<T, Error>
source§impl<'a> SemanticRewriter<ImplGenericFunctionId, NoError> for Inference<'a>
impl<'a> SemanticRewriter<ImplGenericFunctionId, NoError> for Inference<'a>
fn internal_rewrite( &mut self, value: &mut ImplGenericFunctionId, ) -> Result<RewriteResult, NoError>
fn rewrite(&mut self, value: T) -> Result<T, Error>
impl Copy for ImplGenericFunctionId
impl Eq for ImplGenericFunctionId
impl StructuralPartialEq for ImplGenericFunctionId
Auto Trait Implementations§
impl Freeze for ImplGenericFunctionId
impl RefUnwindSafe for ImplGenericFunctionId
impl Send for ImplGenericFunctionId
impl Sync for ImplGenericFunctionId
impl Unpin for ImplGenericFunctionId
impl UnwindSafe for ImplGenericFunctionId
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
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§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