package rocq-runtime
Install
dune-project
Dependency
Authors
Maintainers
Sources
sha256=a45280ab4fbaac7540b136a6b073b4a6db15739ec1e149bded43fa6f4fc25f20
doc/rocq-runtime.lib/Util/index.html
Module UtilSource
This module contains numerous utility functions on strings, lists, arrays, etc.
Mapping under pairs
Folding under pairs
Equality on pairs
Mapping under triplets
Projections from triplets
Chars.
Empty type
Strings.
Substitute %s in the first chain by the second chain
Lists.
Arrays.
Sets.
Maps.
Matrices.
Functions.
Left-to-right function composition:
f1 %> f2 is fun x -> f2 (f1 x).
f1 %> f2 %> f3 is fun x -> f3 (f2 (f1 x)).
f1 %> f2 %> f3 %> f4 is fun x -> f4 (f3 (f2 (f1 x)))
etc.
Delayed computations.
try_finally f x g y applies the main code f to x and returns the result after having applied the finalization code g to y. If the main code raises the exception exn, the finalization code is executed and exn is raised. If the finalization code itself fails, the exception returned is always the one from the finalization code. Credit X.Leroy, D.Remy.
val protect_state :
freeze:(unit -> 'st) ->
unfreeze:('st -> unit) ->
scope:(unit -> 'a) ->
'aMisc.
Alias for Union.map
Open an utf-8 encoded file and skip the byte-order mark if any.
A trick which can typically be used to store on the fly the computation of values in the "when" clause of a "match" then retrieve the evaluated result in the r.h.s of the clause