src/Tools/Code/code_runtime.ML
changeset 56969 7491932da574
parent 56920 d651b944c67e
child 56973 62da80041afd
equal deleted inserted replaced
56968:d2b1d95eb722 56969:7491932da574
   179   raw_check_holds_oracle (ctxt, evaluator, vs_ty_t, ct);
   179   raw_check_holds_oracle (ctxt, evaluator, vs_ty_t, ct);
   180 
   180 
   181 in
   181 in
   182 
   182 
   183 fun dynamic_holds_conv ctxt = Code_Thingol.dynamic_conv ctxt
   183 fun dynamic_holds_conv ctxt = Code_Thingol.dynamic_conv ctxt
   184   (fn program => fn _ => fn vs_t => fn deps =>
   184   (fn program => fn vs_t => fn deps =>
   185     check_holds_oracle ctxt (obtain_evaluator ctxt NONE program deps) vs_t)
   185     check_holds_oracle ctxt (obtain_evaluator ctxt NONE program deps) vs_t)
   186       o reject_vars ctxt;
   186       o reject_vars ctxt;
   187 
   187 
   188 fun static_holds_conv ctxt consts =
   188 fun static_holds_conv ctxt consts =
   189   Code_Thingol.static_conv ctxt consts (fn program => fn consts' =>
   189   Code_Thingol.static_conv ctxt consts (fn program => fn consts' =>
   190     let
   190     let
   191       val evaluator' = obtain_evaluator ctxt NONE program (map Constant consts')
   191       val evaluator' = obtain_evaluator ctxt NONE program (map Constant consts')
   192     in
   192     in
   193       fn ctxt' => fn _ => fn vs_t => fn _ => check_holds_oracle ctxt' evaluator' vs_t o reject_vars ctxt'
   193       fn ctxt' => fn vs_t => fn _ => check_holds_oracle ctxt' evaluator' vs_t o reject_vars ctxt'
   194     end);
   194     end);
   195 
   195 
   196 (* o reject_vars ctxt'*)
   196 (* o reject_vars ctxt'*)
   197 
   197 
   198 end; (*local*)
   198 end; (*local*)