Struct gluon_base::types::TypeCache
[−]
[src]
pub struct TypeCache<Id, T> { 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
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]
T: From<Type<Id, T>> + Clone,
fn new() -> Self
[src]
fn hole(&self) -> T
[src]
fn opaque(&self) -> T
[src]
fn int(&self) -> T
[src]
fn byte(&self) -> T
[src]
fn float(&self) -> T
[src]
fn string(&self) -> T
[src]
fn char(&self) -> T
[src]
fn function_builtin(&self) -> T
[src]
fn array_builtin(&self) -> T
[src]
fn unit(&self) -> T
[src]
fn empty_row(&self) -> T
[src]
impl<Id, T> TypeCache<Id, T> where
T: From<Type<Id, T>> + Clone,
[src]
T: From<Type<Id, T>> + Clone,
fn function<I>(&self, args: I, ret: T) -> T where
I: IntoIterator<Item = T>,
I::IntoIter: DoubleEndedIterator<Item = T>,
[src]
I: IntoIterator<Item = T>,
I::IntoIter: DoubleEndedIterator<Item = T>,
fn tuple<S: ?Sized, I>(&self, symbols: &mut S, elems: I) -> T where
S: IdentEnv<Ident = Id>,
I: IntoIterator<Item = T>,
[src]
S: IdentEnv<Ident = Id>,
I: IntoIterator<Item = T>,
fn variant(&self, fields: Vec<Field<Id, T>>) -> T
[src]
fn record(
&self,
types: Vec<Field<Id, Alias<Id, T>>>,
fields: Vec<Field<Id, T>>
) -> T
[src]
&self,
types: Vec<Field<Id, Alias<Id, T>>>,
fields: Vec<Field<Id, T>>
) -> T
fn builtin_type(&self, typ: BuiltinType) -> T
[src]
fn array(&self, typ: T) -> T
[src]
Trait Implementations
impl<Id: Debug, T: Debug> Debug for TypeCache<Id, T>
[src]
impl<Id: Clone, T: Clone> Clone for TypeCache<Id, T>
[src]
fn clone(&self) -> TypeCache<Id, T>
[src]
Returns a copy of the value. Read more
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]
T: From<Type<Id, T>> + Clone,