Function uvls::core::resolve::resolve_constraint

source ยท
fn resolve_constraint(
    ctx: &TypeResolveContext<'_>,
    file: FileID,
    constraint: &ConstraintDecl,
    err: &mut ErrorsAcc<'_>,
    ref_map: &mut HashMap<Symbol, RootSymbol>,
)
Expand description

Since there can be multiple possible interpretations, two pases are used for equations. First pass: Gather a set of all possible types for each equation side. Second pass: Pick a common type and resolve each expression with the choosen type We could simply forbid alias import and feature names but thats boring.