Module data_structures

Source

Structs§

DelayedMap
A hashmap which only starts hashing after ignoring the first few inputs.
DelayedSet
NoError
A struct which can never be instantiated. Used for the error type for infallible cases.
SsoHashSet
Small-storage-optimized implementation of a set.

Enums§

SsoHashMap
Small-storage-optimized implementation of a map.

Traits§

UnifyKey
This trait is implemented by any type that can serve as a type variable. We call such variables unification keys. For example, this trait is implemented by IntVid, which represents integral variables.
UnifyValue
Trait implemented for values associated with a unification key. This trait defines how to merge the values from two keys that are unioned together. This merging can be fallible. If you attempt to union two keys whose values cannot be merged, then the error is propagated up and the two keys are not unioned.

Functions§

ensure_sufficient_stack
Grows the stack on demand to prevent stack overflow. Call this in strategic locations to “break up” recursive calls. E.g. almost any call to visit_expr or equivalent can benefit from this.

Type Aliases§

HashMap
Type alias for a hashmap using the fx hash algorithm.
HashSet
Type alias for a hashmap using the fx hash algorithm.
IndexMap
IndexSet