pub struct DefPath {
pub package: PackageName,
pub module: QualifiedName,
pub item: Vec<DefPathSegment>,
}Expand description
Stable qualified semantic identity for a package/module/item path.
Unlike local ModuleId/FunctionId/ClassId/BindingId values, a DefPath
is intended to describe the same semantic item across compiler products when
the source/project identity is unchanged.
Fields§
§package: PackageName§module: QualifiedName§item: Vec<DefPathSegment>Implementations§
Trait Implementations§
Source§impl<'de> Deserialize<'de> for DefPath
impl<'de> Deserialize<'de> for DefPath
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for DefPath
impl StructuralPartialEq for DefPath
Auto Trait Implementations§
impl Freeze for DefPath
impl RefUnwindSafe for DefPath
impl Send for DefPath
impl Sync for DefPath
impl Unpin for DefPath
impl UnsafeUnpin for DefPath
impl UnwindSafe for DefPath
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<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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.