view src/cache.sml @ 2307:6ae9a2784a45

Return to working version mode
author Adam Chlipala <adam@chlipala.net>
date Sun, 20 Dec 2015 14:39:50 -0500
parents 0bdfec16a01d
children
line wrap: on
line source
structure Cache = struct

type cache =
     {(* Takes a query ID and parameters (and, for store, the value to
         store) and gives an FFI call that checks, stores, or flushes the
         relevant entry. The parameters are strings for check and store and
         optional strings for flush because some parameters might not be
         fixed. *)
      check : int * Mono.exp list -> Mono.exp',
      store : int * Mono.exp list * Mono.exp -> Mono.exp',
      flush : int * Mono.exp list -> Mono.exp',
      lock : int * bool (* true = write, false = read *) -> Mono.exp',
      (* Generates C needed for FFI calls in check, store, and flush. *)
      setupGlobal : Print.PD.pp_desc,
      setupQuery : {index : int, params : int} -> Print.PD.pp_desc}

end