Module gluon_base::types
source · Re-exports
pub use self::pretty_print::Filter;pub use self::pretty_print::TypeFormatter;pub use crate::ast::KindedIdent;
Modules
Structs
- An alias is wrapper around
Type::Alias, allowing it to be cheaply converted to a type and dereferenced toAliasRef - Data for a type alias. Probably you want to use
Aliasinstead 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
- FIXME Distinguish generic id’s so we only need to compare them by
id(currently they will get the wrong kind assigned to them otherwise)
Enums
- All the builtin types of gluon
- The representation of gluon’s types.
Traits
- Trait which is a
TypeEnvwhich 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
fon each inner type. IffreturnSomethe type is replaced.
Type Aliases
SmallVecused in theType::Appconstructor to avoid allocating aVecfor every applied type. IfTypeis changed in a way that changes its size it is likely a good idea to change the number of elements in theSmallVecso that it fills out the entireTypeenum while not increasing the size ofType.