Skip to main content

Module types

Module types 

Source

Structs§

Bound
Symbol
Dot-qualified identifier for a named type, method, value, or variant.
TypeVarId
A unique handle identifying a type variable. The binding state (Unbound / Bound-to-a-Type) lives in a TypeEnv owned by the checker; the handle is a plain id so Type stays a pure value (Clone, Eq, Hash, Serialize).

Enums§

CompoundKind
NumericFamily
SimpleKind
Type

Constants§

GO_IMPORT_PREFIX

Functions§

build_substitution_map
Build a substitution map from a list of generics and their type arguments, pairing each generic’s name with the type at the same position.
is_range_type_name
module_for_qualified_name
Resolve the module of a qualified ID. For go: IDs containing /, does a longest-prefix match against module_ids to disambiguate paths whose module segment contains dots (e.g. gopkg.in/yaml.v3). Otherwise splits on the first dot. Returns None when the id has no dot and is not a registered go: module.
peel_alias
Walk an alias chain via underlying_ty (preserves substitution); cycle guard defends against chains that slip past circular_type_alias.
peel_alias_id
Walk an alias chain by id alone; used when no Type with underlying_ty is available (e.g. Go-name resolution).
peel_to_range_type
substitute
unqualified_name
Extract the unqualified name from a dot-qualified identifier.

Type Aliases§

SubstitutionMap
type param name -> type variable