Struct gluon_base::types::AliasData
source · pub struct AliasData<Id, T: TypePtr<Id = Id>> {
pub name: Id,
pub is_implicit: bool,
/* private fields */
}
Fields§
§name: Id
§is_implicit: bool
Implementations§
source§impl<Id, T> AliasData<Id, T>where
T: TypePtr<Id = Id>,
impl<Id, T> AliasData<Id, T>where T: TypePtr<Id = Id>,
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 unresolved_type_mut(&mut self) -> &mut T
pub fn is_implicit(&self) -> bool
source§impl<Id, T> AliasData<Id, T>where
T: TypePtr<Id = Id>,
Id: Clone,
impl<Id, T> AliasData<Id, T>where T: TypePtr<Id = Id>, Id: Clone,
pub fn self_type(&self, context: &mut (impl TypeContext<Id, T> + ?Sized)) -> T
Trait Implementations§
source§impl<'ast, Id, T> AstClone<'ast, Id> for AliasData<Id, T>where
Id: AstClone<'ast, Id> + Clone,
T: AstClone<'ast, Id> + TypePtr<Id = Id>,
T::Generics: AstClone<'ast, Id>,
impl<'ast, Id, T> AstClone<'ast, Id> for AliasData<Id, T>where Id: AstClone<'ast, Id> + Clone, T: AstClone<'ast, Id> + TypePtr<Id = Id>, T::Generics: AstClone<'ast, Id>,
source§impl<Id: Clone, T: Clone + TypePtr<Id = Id>> Clone for AliasData<Id, T>where
T::Generics: Clone,
impl<Id: Clone, T: Clone + TypePtr<Id = Id>> Clone for AliasData<Id, T>where T::Generics: Clone,
source§impl<Id: Debug, T: Debug + TypePtr<Id = Id>> Debug for AliasData<Id, T>where
T::Generics: Debug,
impl<Id: Debug, T: Debug + TypePtr<Id = Id>> Debug for AliasData<Id, T>where T::Generics: Debug,
source§impl<Id, T> From<AliasData<Id, T>> for Alias<Id, T>where
T: TypeExt<Id = Id> + From<Type<Id, T>>,
T::Types: Clone + Default + Extend<T>,
impl<Id, T> From<AliasData<Id, T>> for Alias<Id, T>where T: TypeExt<Id = Id> + From<Type<Id, T>>, T::Types: Clone + Default + Extend<T>,
source§impl<Id: PartialEq, T: PartialEq + TypePtr<Id = Id>> PartialEq<AliasData<Id, T>> for AliasData<Id, T>where
T::Generics: PartialEq,
impl<Id: PartialEq, T: PartialEq + TypePtr<Id = Id>> PartialEq<AliasData<Id, T>> for AliasData<Id, T>where T::Generics: PartialEq,
impl<Id: Eq, T: Eq + TypePtr<Id = Id>> Eq for AliasData<Id, T>where T::Generics: Eq,
impl<Id, T: TypePtr<Id = Id>> StructuralEq for AliasData<Id, T>
impl<Id, T: TypePtr<Id = Id>> StructuralPartialEq for AliasData<Id, T>
Auto Trait Implementations§
impl<Id, T> RefUnwindSafe for AliasData<Id, T>where Id: RefUnwindSafe, T: RefUnwindSafe, <T as TypePtr>::Generics: RefUnwindSafe,
impl<Id, T> Send for AliasData<Id, T>where Id: Send, T: Send, <T as TypePtr>::Generics: Send,
impl<Id, T> Sync for AliasData<Id, T>where Id: Sync, T: Sync, <T as TypePtr>::Generics: Sync,
impl<Id, T> Unpin for AliasData<Id, T>where Id: Unpin, T: Unpin, <T as TypePtr>::Generics: Unpin,
impl<Id, T> UnwindSafe for AliasData<Id, T>where Id: UnwindSafe, T: UnwindSafe, <T as TypePtr>::Generics: UnwindSafe,
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