Module gluon_check::typecheck[][src]

The main typechecking interface which is responsible for typechecking expressions, patterns, etc. Only checks which need to be aware of expressions are handled here the actual unifying and checking of types are done in the unify_type and kindcheck modules.

Structs

ImplicitError
Typecheck

Struct which provides methods to typecheck expressions.

Enums

Help
ImplicitErrorKind
TypeError

Type representing a single error when checking a type

Traits

TypecheckEnv

Functions

extract_generics
translate_projected_type
unroll_typ

Removes layers of Type::App and Type::Record by packing them into a single Type::App or Type::Record

Type Definitions

Error

Error returned when unsuccessfully typechecking an expression

HelpError
SpannedTypeError