diff options
| author | Emilio Jesus Gallego Arias | 2018-05-21 19:21:26 +0200 |
|---|---|---|
| committer | Emilio Jesus Gallego Arias | 2018-05-31 11:16:45 +0200 |
| commit | 2a69be9e8243fa67d5c7ef5f10e623b02a0a3e2f (patch) | |
| tree | 493d780d22515a60716845109d12690caf0b1f8a /engine/uState.mli | |
| parent | ac8a84e3b4dc530b000e17b72c7e26f7a957420f (diff) | |
[api] Move `Constrexpr` to the `interp` module.
Continuing the interface cleanup we place `Constrexpr` in the
internalization module, which is the one that eliminates it.
This slims down `pretyping` considerably, including removing the
`Univdecls` module which existed only due to bad dependency ordering
in the first place. Thanks to @ Skyskimmer we also remove a duplicate
`univ_decl` definition among `Misctypes` and `UState`.
This is mostly a proof of concept yet as it depends on quite a few
patches of the tree. For sure some tweaks will be necessary, but it
should be good for review now.
IMO the tree is now in a state where we can could easy eliminate more
than 10 modules without any impact, IMHO this is a net saving API-wise
and would help people to understand the structure of the code better.
Diffstat (limited to 'engine/uState.mli')
| -rw-r--r-- | engine/uState.mli | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/engine/uState.mli b/engine/uState.mli index d1678a1556..e2f25642e5 100644 --- a/engine/uState.mli +++ b/engine/uState.mli @@ -138,8 +138,16 @@ val refresh_undefined_univ_variables : t -> t * Univ.universe_level_subst (** Universe minimization *) val minimize : t -> t +type ('a, 'b) gen_universe_decl = { + univdecl_instance : 'a; (* Declared universes *) + univdecl_extensible_instance : bool; (* Can new universes be added *) + univdecl_constraints : 'b; (* Declared constraints *) + univdecl_extensible_constraints : bool (* Can new constraints be added *) } + type universe_decl = - (Misctypes.lident list, Univ.Constraint.t) Misctypes.gen_universe_decl + (Misctypes.lident list, Univ.Constraint.t) gen_universe_decl + +val default_univ_decl : universe_decl (** [check_univ_decl ctx decl] |
