Struct gluon_base::types::TypeCache [−][src]
pub struct TypeCache<Id, T> { pub kind_cache: KindCache, pub hole: T, pub opaque: T, pub int: T, pub byte: T, pub float: T, pub string: T, pub char: T, pub function_builtin: T, pub array_builtin: T, pub unit: T, pub empty_row: T, // some fields omitted }
Fields
kind_cache: KindCache
hole: T
opaque: T
int: T
byte: T
float: T
string: T
char: T
function_builtin: T
array_builtin: T
unit: T
empty_row: T
Methods
impl<Id, T> TypeCache<Id, T> where
T: From<Type<Id, T>> + Clone,
[src]
impl<Id, T> TypeCache<Id, T> where
T: From<Type<Id, T>> + Clone,
pub fn new() -> Self
[src]
pub fn new() -> Self
pub fn hole(&self) -> T
[src]
pub fn hole(&self) -> T
pub fn opaque(&self) -> T
[src]
pub fn opaque(&self) -> T
pub fn int(&self) -> T
[src]
pub fn int(&self) -> T
pub fn byte(&self) -> T
[src]
pub fn byte(&self) -> T
pub fn float(&self) -> T
[src]
pub fn float(&self) -> T
pub fn string(&self) -> T
[src]
pub fn string(&self) -> T
pub fn char(&self) -> T
[src]
pub fn char(&self) -> T
pub fn function_builtin(&self) -> T
[src]
pub fn function_builtin(&self) -> T
pub fn array_builtin(&self) -> T
[src]
pub fn array_builtin(&self) -> T
pub fn unit(&self) -> T
[src]
pub fn unit(&self) -> T
pub fn empty_row(&self) -> T
[src]
pub fn empty_row(&self) -> T
impl<Id, T> TypeCache<Id, T> where
T: From<Type<Id, T>> + Clone,
[src]
impl<Id, T> TypeCache<Id, T> where
T: From<Type<Id, T>> + Clone,
pub fn function<I>(&self, args: I, ret: T) -> T where
I: IntoIterator<Item = T>,
I::IntoIter: DoubleEndedIterator<Item = T>,
[src]
pub fn function<I>(&self, args: I, ret: T) -> T where
I: IntoIterator<Item = T>,
I::IntoIter: DoubleEndedIterator<Item = T>,
pub fn function_implicit<I>(&self, args: I, ret: T) -> T where
I: IntoIterator<Item = T>,
I::IntoIter: DoubleEndedIterator<Item = T>,
[src]
pub fn function_implicit<I>(&self, args: I, ret: T) -> T where
I: IntoIterator<Item = T>,
I::IntoIter: DoubleEndedIterator<Item = T>,
pub fn tuple<S: ?Sized, I>(&self, symbols: &mut S, elems: I) -> T where
S: IdentEnv<Ident = Id>,
I: IntoIterator<Item = T>,
[src]
pub fn tuple<S: ?Sized, I>(&self, symbols: &mut S, elems: I) -> T where
S: IdentEnv<Ident = Id>,
I: IntoIterator<Item = T>,
pub fn variant(&self, fields: Vec<Field<Id, T>>) -> T
[src]
pub fn variant(&self, fields: Vec<Field<Id, T>>) -> T
pub fn record(
&self,
types: Vec<Field<Id, Alias<Id, T>>>,
fields: Vec<Field<Id, T>>
) -> T
[src]
pub fn record(
&self,
types: Vec<Field<Id, Alias<Id, T>>>,
fields: Vec<Field<Id, T>>
) -> T
pub fn builtin_type(&self, typ: BuiltinType) -> T
[src]
pub fn builtin_type(&self, typ: BuiltinType) -> T
pub fn array(&self, typ: T) -> T
[src]
pub fn array(&self, typ: T) -> T
Trait Implementations
impl<Id: Debug, T: Debug> Debug for TypeCache<Id, T>
[src]
impl<Id: Debug, T: Debug> Debug for TypeCache<Id, T>
fn fmt(&self, f: &mut Formatter) -> Result
[src]
fn fmt(&self, f: &mut Formatter) -> Result
Formats the value using the given formatter. Read more
impl<Id: Clone, T: Clone> Clone for TypeCache<Id, T>
[src]
impl<Id: Clone, T: Clone> Clone for TypeCache<Id, T>
fn clone(&self) -> TypeCache<Id, T>
[src]
fn clone(&self) -> TypeCache<Id, T>
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
fn clone_from(&mut self, source: &Self)
1.0.0
[src]Performs copy-assignment from source
. Read more
impl<Id, T> Default for TypeCache<Id, T> where
T: From<Type<Id, T>> + Clone,
[src]
impl<Id, T> Default for TypeCache<Id, T> where
T: From<Type<Id, T>> + Clone,