diff options
author | letouzey <letouzey@85f007b7-540e-0410-9357-904b9bb8a0f7> | 2013-04-22 14:39:07 +0000 |
---|---|---|
committer | letouzey <letouzey@85f007b7-540e-0410-9357-904b9bb8a0f7> | 2013-04-22 14:39:07 +0000 |
commit | c9917c210da30521673e843b626359f4a1051e74 (patch) | |
tree | f45a15f42956159752d6192ec7980081383330f9 /kernel | |
parent | 14fdc212d664df129e2f718ea8b8eb87927a8ee8 (diff) |
code simplifications concerning Summary
- Most of the time, the table registered via Summary.declare_summary
is just a single reference. A new function Summary.ref now allows
to both declare this ref and register it to summary in one shot.
- Clarifications concerning the role of [init_function].
For statically registered tables that don't need a special initializer,
just do nothing there (see the new Summary.nop function).
Beware: now that Summary exports a function named "ref", any code that
do an "open Summary" will probably fail to compile.
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@16441 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'kernel')
-rw-r--r-- | kernel/conv_oracle.ml | 9 | ||||
-rw-r--r-- | kernel/conv_oracle.mli | 1 |
2 files changed, 4 insertions, 6 deletions
diff --git a/kernel/conv_oracle.ml b/kernel/conv_oracle.ml index 6f013e46f..758bf821f 100644 --- a/kernel/conv_oracle.ml +++ b/kernel/conv_oracle.ml @@ -28,6 +28,10 @@ type oracle = level Id.Map.t * level Cmap.t let var_opacity = ref Id.Map.empty let cst_opacity = ref Cmap.empty +(* summary operations *) +let freeze () = (!var_opacity, !cst_opacity) +let unfreeze (vo,co) = (cst_opacity := co; var_opacity := vo) + let get_strategy = function | VarKey id -> (try Id.Map.find id !var_opacity @@ -65,8 +69,3 @@ let oracle_order l2r k1 k2 = | Level n1, Opaque -> true | Level n1, Level n2 -> n1 < n2 | _ -> l2r (* use recommended default *) - -(* summary operations *) -let init() = (cst_opacity := Cmap.empty; var_opacity := Id.Map.empty) -let freeze () = (!var_opacity, !cst_opacity) -let unfreeze (vo,co) = (cst_opacity := co; var_opacity := vo) diff --git a/kernel/conv_oracle.mli b/kernel/conv_oracle.mli index 2a6db4b4b..4d8779664 100644 --- a/kernel/conv_oracle.mli +++ b/kernel/conv_oracle.mli @@ -36,6 +36,5 @@ val get_transp_state : unit -> transparent_state (**************************** Summary operations *) type oracle -val init : unit -> unit val freeze : unit -> oracle val unfreeze : oracle -> unit |