summaryrefslogtreecommitdiff
path: root/src/cache.sml
diff options
context:
space:
mode:
authorGravatar Ziv Scully <ziv@mit.edu>2015-11-13 01:04:32 -0500
committerGravatar Ziv Scully <ziv@mit.edu>2015-11-13 01:04:32 -0500
commitc38edb9bd5c21bcc1d21979d40ec8e9d638b6e9c (patch)
treef43a6a25889fa0c64c29a133e17755aff063704c /src/cache.sml
parent06464bd07cb1efbc9df4ca650978c14f4c20390a (diff)
Fix issue with one-element caches. Locking still WIP.
Diffstat (limited to 'src/cache.sml')
-rw-r--r--src/cache.sml9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/cache.sml b/src/cache.sml
index 8de22e0d..015c3ff1 100644
--- a/src/cache.sml
+++ b/src/cache.sml
@@ -2,13 +2,14 @@ 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. *)
+ 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}