Crate gluon_check

Source
Expand description

The check crate is responsible for ensuring that an AST expression is actually a valid program. This currently consits of three larger parts, typechecking, kindchecking and renaming. If an AST passes the checks in Typecheck::typecheck_expr (which runs all of theses checks the expression is expected to compile succesfully (if it does not it should be considered an internal compiler error.

Modules§

kindcheck
metadata
rename
substitution
typecheck
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.
unify
unify_type

Traits§

TypecheckEnv

Functions§

check_signature
Checks if actual can be assigned to a binding with the type signature signature