Struct gluon_base::types::AliasRef
source · pub struct AliasRef<Id, T>where
T: TypePtr<Id = Id>,{
pub group: Arc<[AliasData<Id, T>]>,
/* private fields */
}
Expand description
Data for a type alias. Probably you want to use Alias
instead of this directly as Alias allows
for cheap conversion back into a type as well.
Fields§
§group: Arc<[AliasData<Id, T>]>
The other aliases defined in this group
Implementations§
Methods from Deref<Target = AliasData<Id, T>>§
sourcepub fn unresolved_type(&self) -> &T
pub fn unresolved_type(&self) -> &T
Returns the type aliased by self
with out Type::Ident
resolved to their actual
Type::Alias
representation
pub fn is_implicit(&self) -> bool
pub fn self_type(&self, context: &mut (impl TypeContext<Id, T> + ?Sized)) -> T
pub fn params(&self) -> &[Generic<Id>]
pub fn aliased_type(&self) -> &T
pub fn kind<'k>(&'k self, cache: &'k KindCache) -> Cow<'k, ArcKind>
Trait Implementations§
source§impl<'de, Id, T> DeserializeState<'de, Seed<Id, T>> for AliasRef<Id, T>
impl<'de, Id, T> DeserializeState<'de, Seed<Id, T>> for AliasRef<Id, T>
source§fn deserialize_state<__D>(
__seed: &mut Seed<Id, T>,
__deserializer: __D
) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize_state<__D>(
__seed: &mut Seed<Id, T>,
__deserializer: __D
) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserializes
Self
using seed
and the deserializer
source§impl<Id, T> PartialEq for AliasRef<Id, T>
impl<Id, T> PartialEq for AliasRef<Id, T>
source§impl<Id, T> SerializeState<SeSeed> for AliasRef<Id, T>
impl<Id, T> SerializeState<SeSeed> for AliasRef<Id, T>
source§fn serialize_state<__S>(
&self,
__serializer: __S,
__seed: &SeSeed
) -> Result<__S::Ok, __S::Error>where
__S: Serializer,
fn serialize_state<__S>(
&self,
__serializer: __S,
__seed: &SeSeed
) -> Result<__S::Ok, __S::Error>where
__S: Serializer,
Serializes
self
impl<Id, T> Eq for AliasRef<Id, T>
Auto Trait Implementations§
impl<Id, T> RefUnwindSafe for AliasRef<Id, T>
impl<Id, T> Send for AliasRef<Id, T>
impl<Id, T> Sync for AliasRef<Id, T>
impl<Id, T> Unpin for AliasRef<Id, T>
impl<Id, T> UnwindSafe for AliasRef<Id, T>
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