module type PERM =Output type of Permsig..end
type t
type entry
module Container:Seqdb_containers.HASHABLE
val create : ?sbsize:int ->
?hash_algo:Seqdb_containers.Hash_algo.hash_algo ->
?fileincr:int64 ->
?purpose:string ->
Container.t -> Seqdb_rdwr.file_descr -> tval access : Container.t -> Seqdb_rdwr.file_descr -> tval superblock : t -> Seqdb_containers.Superblock.tval mark_superblock_as_dirty : t -> unitval configure : ?flush_every:int -> ?auto_fadvise:bool -> t -> unitflush_every: The superblock is written every this number of
adds, deletes, replaces. (Default: 1)auto_fadvise: Advises to remove the file from the page cache
after every sync (automatic syncs & explicit syncs). The superblock
is not removed. (Default: false)val size : t -> int64val add : t -> Container.entry -> entry
It isn't checked whether the Container.pointer is already member of
the array!
val flush : t -> unitval sync : t -> unitflush)val get_contents : entry -> Container.entryval get_index : entry -> int640 <= index < sizeval lookup : t -> int64 -> entry0 <= index < sizeval group : ?ext:Seqdb_rdwr.file_descr * int -> t -> unit
ext: If passed as (fd, n), an external sort is used with a chunk
size of n (i.e. up to n entries are sorted in memory). fd is
a file that serves as scratch space.
EXTERNAL SORTING IS NOT YET IMPLEMENTED!
val hash_algo : t -> Seqdb_containers.Hash_algo.hash_algoval fadvise_wontneed : t -> unit