package irmin-pack
Install
dune-project
Dependency
Authors
Maintainers
Sources
sha256=92a9de7a0a2a35c2feba0c35a806b1f0df24c1c0d15164eebf3f919296d26715
sha512=0203ec5117a851ad5afeb2f9091659b4e142e231b6b945caab93f4d7beb23397c8ac43f7056e91d18f4bff0be1062f6ae966d221f877c229328c0cbbf29fd9f0
doc/irmin-pack.unix/Irmin_pack_unix/Sparse_file/Make/Wo/index.html
Module Make.WoSource
val open_wo :
mapping_size:int ->
mapping:string ->
data:string ->
(t, [> open_error ]) resultopen_wo ~mapping_size ~mapping ~data returns a write-only instance of the sparse file.
Note: This is unsafe and is only used by the GC to mark the parent commits as dangling. One must ensure that no read-only instance is opened at the same time, as otherwise the writes would be observable by it.
write_exn t ~off ~len str writes the first len bytes of str to t at the virtual offset off.
fsync t persists to the file system the effects of previous writes.
Close the underlying files.
val create_from_data :
mapping:string ->
dead_header_size:int ->
size:Optint.Int63.t ->
data:string ->
(Optint.Int63.t, [> Io.create_error | Io.write_error | Io.close_error ])
resultcreate_from_data ~mapping ~dead_header_size ~size ~data initializes a new sparse file on disk from the existing file data, by creating the corresponding mapping file. The first dead_header_size bytes are ignored and the remaining size bytes of data are made available.
On success, returns the size of the mapping file to be stored in the control file for consistency checking on open.