Struct gluon_vm::types::TypeInfos [] [src]

pub struct TypeInfos {
    pub id_to_type: HashMap<String, Alias<Symbol, TcType>>,
    pub type_to_id: HashMap<TcType, TcType>,
}

Fields

id_to_type: HashMap<String, Alias<Symbol, TcType>> type_to_id: HashMap<TcType, TcType>

Methods

impl TypeInfos
[src]

fn new() -> TypeInfos

fn extend(&mut self, other: TypeInfos)

Trait Implementations

impl CompilerEnv for TypeInfos
[src]

fn find_var(&self, id: &Symbol) -> Option<Variable<Symbol>>

impl Debug for TypeInfos
[src]

fn fmt(&self, __arg_0: &mut Formatter) -> Result

Formats the value using the given formatter.

impl KindEnv for TypeInfos
[src]

fn find_kind(&self, type_name: &Symbol) -> Option<RcKind>

Returns the kind of the type type_name

impl TypeEnv for TypeInfos
[src]

fn find_type(&self, id: &Symbol) -> Option<&TcType>

Returns the type of the value bound at id

fn find_type_info(&self, id: &Symbol) -> Option<&Alias<Symbol, TcType>>

Returns information about the type id

fn find_record(&self, fields: &[Symbol]) -> Option<(&TcType, &TcType)>

Returns a record which contains all fields. The first element is the record type and the second is the alias type. Read more