X-Git-Url: http://git.nguyen.vg/gitweb/?p=tatoo.git;a=blobdiff_plain;f=src%2Fcache.mli;fp=src%2Fcache.mli;h=5827f6c03c2d21231b3a3dba8495b8ee4288be23;hp=0000000000000000000000000000000000000000;hb=974dacbf4f625bfd8ea83db69d6b346050141fea;hpb=7e8fa6a1fcb2f6ea9e3639e8a3f0d199836796a5 diff --git a/src/cache.mli b/src/cache.mli new file mode 100644 index 0000000..5827f6c --- /dev/null +++ b/src/cache.mli @@ -0,0 +1,87 @@ +(***********************************************************************) +(* *) +(* TAToo *) +(* *) +(* Kim Nguyen, LRI UMR8623 *) +(* Université Paris-Sud & CNRS *) +(* *) +(* Copyright 2010-2013 Université Paris-Sud and Centre National de la *) +(* Recherche Scientifique. All rights reserved. This file is *) +(* distributed under the terms of the GNU Lesser General Public *) +(* License, with the special exception on linking described in file *) +(* ../LICENSE. *) +(* *) +(***********************************************************************) + +(* + Time-stamp: +*) + +(** N-dimentional caches *) + +module N1 : +sig + + type 'a t + val create : 'a -> 'a t + val find : 'a t -> int -> 'a + val add : 'a t -> int -> 'a -> unit + val dummy : 'a t -> 'a + val iteri : (int -> 'a -> bool -> unit) -> 'a t -> unit + val stats : 'a t -> int*int +end + +module N2: +sig + type 'a t + val create : 'a -> 'a t + val find : 'a t -> int -> int -> 'a + val add : 'a t -> int -> int -> 'a -> unit + val dummy : 'a t -> 'a + val iteri : (int -> int -> 'a -> bool -> unit) -> 'a t -> unit + val stats : 'a t -> int*int +end + +module N3 : + sig + type 'a t + val create : 'a -> 'a t + val find : 'a t -> int -> int -> int -> 'a + val add : 'a t -> int -> int -> int -> 'a -> unit + val dummy : 'a t -> 'a + val iteri : (int -> int -> int -> 'a -> bool -> unit) -> 'a t -> unit + val stats : 'a t -> int*int + end + +module N4 : + sig + type 'a t + val create : 'a -> 'a t + val find : 'a t -> int -> int -> int -> int -> 'a + val add : 'a t -> int -> int -> int -> int -> 'a -> unit + val dummy : 'a t -> 'a + val iteri : (int -> int -> int -> int -> 'a -> bool -> unit) -> 'a t -> unit + val stats : 'a t -> int*int + end + +module N5 : + sig + type 'a t + val create : 'a -> 'a t + val find : 'a t -> int -> int -> int -> int -> int -> 'a + val add : 'a t -> int -> int -> int -> int -> int -> 'a -> unit + val dummy : 'a t -> 'a + val iteri : (int -> int -> int -> int -> int -> 'a -> bool -> unit) -> 'a t -> unit + val stats : 'a t -> int*int + end + +module N6 : + sig + type 'a t + val create : 'a -> 'a t + val find : 'a t -> int -> int -> int -> int -> int -> int -> 'a + val add : 'a t -> int -> int -> int -> int -> int -> int -> 'a -> unit + val dummy : 'a t -> 'a + val iteri : (int -> int -> int -> int -> int -> int -> 'a -> bool -> unit) -> 'a t -> unit + val stats : 'a t -> int*int + end