Crate gluon_check [] [src]

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

completion

Primitive auto completion and type quering on ASTs

kindcheck
metadata
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

Functions

check_signature

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