try to tighten type constraints

This commit is contained in:
Simon Cruanes 2020-12-22 12:30:01 -05:00
parent f05de5f741
commit 1890f7af13
2 changed files with 13 additions and 0 deletions

View file

@ -695,6 +695,13 @@ module Make_full_for_expr(V : VAR_GEN)
with type Var.t = V.t with type Var.t = V.t
and type C.t = Q.t and type C.t = Q.t
and type Var.lit = V.lit) and type Var.lit = V.lit)
: S_FULL with type var = V.t
and type lit = V.lit
and module L = L
and module Var_map = L.Var_map
and type L.var = V.t
and type L.Comb.t = L.Comb.t
and type param = V.Fresh.t
= struct = struct
include Make_inner(V)(L.Var_map)(V.Fresh) include Make_inner(V)(L.Var_map)(V.Fresh)
module L = L module L = L
@ -721,4 +728,8 @@ module Make_full_for_expr(V : VAR_GEN)
end end
module Make_full(V : VAR_GEN) module Make_full(V : VAR_GEN)
: S_FULL with type var = V.t
and type lit = V.lit
and type L.var = V.t
and type param = V.Fresh.t
= Make_full_for_expr(V)(Linear_expr.Make(struct include Q let pp = pp_print end)(V)) = Make_full_for_expr(V)(Linear_expr.Make(struct include Q let pp = pp_print end)(V))

View file

@ -22,6 +22,8 @@ module Make_full_for_expr(V : VAR_GEN)
and type lit = V.lit and type lit = V.lit
and module L = L and module L = L
and module Var_map = L.Var_map and module Var_map = L.Var_map
and type L.var = V.t
and type L.Comb.t = L.Comb.t
and type param = V.Fresh.t and type param = V.Fresh.t
module Make_full(V : VAR_GEN) module Make_full(V : VAR_GEN)