Module gluon_base::types

source ·

Re-exports

pub use self::pretty_print::Filter;
pub use self::pretty_print::TypeFormatter;

Modules

Structs

An alias is wrapper around Type::Alias, allowing it to be cheaply converted to a type and dereferenced to AliasRef
Data for a type alias. Probably you want to use Alias instead of this directly as Alias allows for cheap conversion back into a type as well.
A shared type which is atomically reference counted
Wrapper type which allows functions to control how to traverse the members of the type

Enums

All the builtin types of gluon
The representation of gluon’s types.

Traits

Trait which is a TypeEnv which also provides access to the type representation of some primitive types
Trait for values which contains typed values which can be refered by name

Functions

Constructs an iterator over a functions arguments
Constructs an iterator over a functions arguments
Walks through a type calling f on each inner type. If f return Some the type is replaced.

Type Definitions

SmallVec used in the Type::App constructor to avoid allocating a Vec for every applied type. If Type is changed in a way that changes its size it is likely a good idea to change the number of elements in the SmallVec so that it fills out the entire Type enum while not increasing the size of Type.