pub struct StructId(/* private fields */);Implementations§
Source§impl StructId
impl StructId
pub fn ingredient(zalsa: &Zalsa) -> &IngredientImpl<Self>
Source§impl StructId
impl StructId
pub fn fields(self, db: &dyn DefDatabase) -> &VariantFields
pub fn fields_with_source_map( self, db: &dyn DefDatabase, ) -> (Arc<VariantFields>, Arc<ExpressionStoreSourceMap>)
Trait Implementations§
Source§impl Configuration for StructId
impl Configuration for StructId
const LOCATION: Location
const DEBUG_NAME: &'static str = "StructId"
const REVISIONS: NonZeroUsize
Source§fn serialize<S: Serializer>(
fields: &Self::Fields<'_>,
serializer: S,
) -> Result<S::Ok, S::Error>
fn serialize<S: Serializer>( fields: &Self::Fields<'_>, serializer: S, ) -> Result<S::Ok, S::Error>
Serialize the fields using
serde. Read moreSource§fn deserialize<'de, D: Deserializer<'de>>(
deserializer: D,
) -> Result<Self::Fields<'static>, D::Error>
fn deserialize<'de, D: Deserializer<'de>>( deserializer: D, ) -> Result<Self::Fields<'static>, D::Error>
Deserialize the fields using
serde. Read moreSource§impl From<StructId> for CallableDefId
impl From<StructId> for CallableDefId
Source§fn from(it: StructId) -> CallableDefId
fn from(it: StructId) -> CallableDefId
Converts to this type from the input type.
Source§impl From<StructId> for GenericDefId
impl From<StructId> for GenericDefId
Source§fn from(it: StructId) -> GenericDefId
fn from(it: StructId) -> GenericDefId
Converts to this type from the input type.
Source§impl From<StructId> for ModuleDefId
impl From<StructId> for ModuleDefId
Source§fn from(it: StructId) -> ModuleDefId
fn from(it: StructId) -> ModuleDefId
Converts to this type from the input type.
Source§impl Ord for StructId
impl Ord for StructId
Source§impl PartialOrd for StructId
impl PartialOrd for StructId
Source§impl SalsaStructInDb for StructId
impl SalsaStructInDb for StructId
type MemoIngredientMap = MemoIngredientSingletonIndex
Source§fn lookup_ingredient_index(aux: &Zalsa) -> IngredientIndices
fn lookup_ingredient_index(aux: &Zalsa) -> IngredientIndices
Lookup or create ingredient indices. Read more
Source§fn entries(zalsa: &Zalsa) -> impl Iterator<Item = DatabaseKeyIndex> + '_
fn entries(zalsa: &Zalsa) -> impl Iterator<Item = DatabaseKeyIndex> + '_
Returns the IDs of any instances of this struct in the database.
Source§fn cast(id: Id, type_id: TypeId) -> Option<Self>
fn cast(id: Id, type_id: TypeId) -> Option<Self>
Plumbing to support nested salsa supertypes. Read more
Source§unsafe fn memo_table(
zalsa: &Zalsa,
id: Id,
current_revision: Revision,
) -> MemoTableWithTypes<'_>
unsafe fn memo_table( zalsa: &Zalsa, id: Id, current_revision: Revision, ) -> MemoTableWithTypes<'_>
Return the memo table associated with
id. Read moreimpl Copy for StructId
impl Eq for StructId
impl Send for StructId
impl StructuralPartialEq for StructId
impl Sync for StructId
Auto Trait Implementations§
impl Freeze for StructId
impl RefUnwindSafe for StructId
impl Unpin for StructId
impl UnwindSafe for StructId
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,
§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
Source§impl<N, ItemId> HasModule for ItemId
impl<N, ItemId> HasModule for ItemId
Source§fn module(&self, db: &(dyn DefDatabase + 'static)) -> ModuleId
fn module(&self, db: &(dyn DefDatabase + 'static)) -> ModuleId
Returns the enclosing module this thing is defined within.
Source§fn krate(&self, db: &dyn DefDatabase) -> Crate
fn krate(&self, db: &dyn DefDatabase) -> Crate
Returns the crate this thing is defined within.
Source§impl<T> HasResolver for T
impl<T> HasResolver for T
Source§fn resolver(self, db: &(dyn DefDatabase + 'static)) -> Resolver<'_>
fn resolver(self, db: &(dyn DefDatabase + 'static)) -> Resolver<'_>
Builds a resolver for type references inside this def.
§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