package shexp
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=d19e518ace68dc86bc18e9af6b2b2ee0c62ed3341a25cf10cf464f22cb4f8b5d
doc/shexp.bigstring/Shexp_bigstring/Bigstring/index.html
Module Shexp_bigstring.Bigstring
Source
Bigstring helpers for shexp libraries
Efficiently checks that the range denoted by (pos, len)
is in the range 0..length
. length
is assumed to be >= 0
.
Raises if (pos, len)
denotes a range outside of 0..length
.
Allocate a bigstring and pass it to f
. The memory allocated for the bigstring is released as soon as f
returns. As such, the bigstring shouldn't be used after f
returns.
This is more efficient than waiting on the garbage collector to release the external memory.
val fold_temporary :
size:int ->
init:'a ->
f:(t -> 'a -> ('a, 'b) fold_temporary_result) ->
'b
Same as with_temporary
, but allow to resize the bigstring if needed.
If f
returns Resize { new_size; state }
, the bigstring will be resized to the given new size and f
will be called with the new bigstring and state
. The contents of the bigstring up to the min of the old and new sizes is preserved.