move things in place to go storage_subs -> subs

This commit is contained in:
Folkert 2022-03-11 10:49:22 +01:00
parent fa74cf1424
commit 9054546d27
No known key found for this signature in database
GPG Key ID: 1F17F6FFD112B97C
3 changed files with 13 additions and 6 deletions

View File

@ -38,6 +38,7 @@ pub struct Import {
pub fn constrain_imported_values(
constraints: &mut Constraints,
imports: Vec<Import>,
stored_imports: Vec<HackyImport>,
body_con: Constraint,
var_store: &mut VarStore,
) -> (Vec<Variable>, Constraint) {
@ -95,11 +96,17 @@ pub fn constrain_imported_values(
pub fn constrain_imports(
constraints: &mut Constraints,
imported_symbols: Vec<Import>,
stored_imports: Vec<HackyImport>,
constraint: Constraint,
var_store: &mut VarStore,
) -> Constraint {
let (_introduced_rigids, constraint) =
constrain_imported_values(constraints, imported_symbols, constraint, var_store);
let (_introduced_rigids, constraint) = constrain_imported_values(
constraints,
imported_symbols,
stored_imports,
constraint,
var_store,
);
// TODO determine what to do with those rigids
// for var in introduced_rigids {

View File

@ -3103,6 +3103,7 @@ fn run_solve<'a>(
let constraint = constrain_imports(
&mut constraints,
imported_symbols,
imported_storage_subs,
constraint,
&mut var_store,
);
@ -3121,8 +3122,9 @@ fn run_solve<'a>(
// TODO
// if false { debug_assert!(constraint.validate(), "{:?}", &constraint); }
let mut subs = Subs::new_from_varstore(var_store);
let (solved_subs, solved_env, problems) =
roc_solve::module::run_solve(&constraints, constraint, rigid_variables, var_store);
roc_solve::module::run_solve(&constraints, constraint, rigid_variables, subs);
let exposed_vars_by_symbol: Vec<_> = solved_env
.vars_by_symbol()

View File

@ -22,12 +22,10 @@ pub fn run_solve(
constraints: &Constraints,
constraint: ConstraintSoa,
rigid_variables: MutMap<Variable, Lowercase>,
var_store: VarStore,
mut subs: Subs,
) -> (Solved<Subs>, solve::Env, Vec<solve::TypeError>) {
let env = solve::Env::default();
let mut subs = Subs::new_from_varstore(var_store);
for (var, name) in rigid_variables {
subs.rigid_var(var, name);
}