annotate src/cache.sml @ 2284:472b4504aef2

Actually use transactional machinery for flushes this time.
author Ziv Scully <ziv@mit.edu>
date Thu, 12 Nov 2015 11:44:21 -0500
parents af1585e7d645
children 0bdfec16a01d
rev   line source
ziv@2233 1 structure Cache = struct
ziv@2233 2
ziv@2233 3 type cache =
ziv@2233 4 {(* Takes a query ID and parameters (and, for store, the value to
ziv@2233 5 store) and gives an FFI call that checks, stores, or flushes the
ziv@2233 6 relevant entry. The parameters are strings for check and store and
ziv@2233 7 optional strings for flush because some parameters might not be
ziv@2233 8 fixed. *)
ziv@2233 9 check : int * Mono.exp list -> Mono.exp',
ziv@2233 10 store : int * Mono.exp list * Mono.exp -> Mono.exp',
ziv@2233 11 flush : int * Mono.exp list -> Mono.exp',
ziv@2233 12 (* Generates C needed for FFI calls in check, store, and flush. *)
ziv@2233 13 setupGlobal : Print.PD.pp_desc,
ziv@2233 14 setupQuery : {index : int, params : int} -> Print.PD.pp_desc}
ziv@2233 15
ziv@2233 16 end