[][src]Struct gluon_base::ast::AstType

pub struct AstType<Id> { /* fields omitted */ }

Methods

impl<Id> AstType<Id>[src]

pub fn with_comment<T>(
    comment: T,
    typ: Spanned<Type<Id, AstType<Id>>, BytePos>
) -> Self where
    T: Into<Option<Comment>>, 
[src]

pub fn set_comment<T>(&mut self, comment: T) where
    T: Into<Option<Comment>>, 
[src]

pub fn into_inner(self) -> Type<Id, Self>[src]

pub fn remove_single_forall(&mut self) -> &mut AstType<Id>[src]

Methods from Deref<Target = Type<Id, AstType<Id>>>

pub fn as_function(&self) -> Option<(&T, &T)>[src]

pub fn as_explicit_function(&self) -> Option<(&T, &T)>[src]

pub fn as_function_with_type(&self) -> Option<(ArgType, &T, &T)>[src]

pub fn unapplied_args(&self) -> Cow<[T]> where
    T: Clone
[src]

pub fn alias_ident(&self) -> Option<&Id>[src]

pub fn applied_alias(&self) -> Option<&AliasRef<Id, T>>[src]

pub fn is_non_polymorphic_record(&self) -> bool[src]

pub fn params(&self) -> &[Generic<Id>][src]

pub fn kind<'k>(&'k self, cache: &'k KindCache) -> Cow<'k, ArcKind>[src]

pub fn name(&self) -> Option<&SymbolRef>[src]

Returns the name of self Example: Option a => Option Int => Int

Trait Implementations

impl<Id> Commented for AstType<Id>[src]

impl<Id> HasSpan for AstType<Id>[src]

impl<Id> AsMut<Spanned<Type<Id, AstType<Id>>, ByteIndex>> for AstType<Id>[src]

impl<Id: PartialEq> PartialEq<AstType<Id>> for AstType<Id>[src]

impl<Id> From<Spanned<Type<Id, AstType<Id>>, ByteIndex>> for AstType<Id>[src]

impl<Id> From<Type<Id, AstType<Id>>> for AstType<Id>[src]

impl<Id: Clone> Clone for AstType<Id>[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

Performs copy-assignment from source. Read more

impl<Id: Eq> Eq for AstType<Id>[src]

impl<Id> DerefMut for AstType<Id>[src]

impl<Id: AsRef<str>> Display for AstType<Id>[src]

impl<Id: Debug> Debug for AstType<Id>[src]

impl<Id> Deref for AstType<Id>[src]

type Target = Type<Id, AstType<Id>>

The resulting type after dereferencing.

Auto Trait Implementations

impl<Id> Send for AstType<Id> where
    Id: Send + Sync

impl<Id> Sync for AstType<Id> where
    Id: Send + Sync

Blanket Implementations

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T> From for T[src]

impl<T, U> TryFrom for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.