package gapi-ocaml
Install
dune-project
Dependency
Authors
Maintainers
Sources
sha256=e189067f3caf58235eee7f3f1b0f051d0192cd012e444c87492b2b502ad7c29c
md5=0f0c17b713f86d91d6be8ddf4a741745
doc/gapi-ocaml.netstring-local/Netstring_tstring/index.html
Module Netstring_tstringSource
Support module for tagged strings
type _ tstring_kind = | String_kind : string tstring_kind| Bytes_kind : Bytes.t tstring_kind| Memory_kind : Netsys_types.memory tstring_kind
GADT for encoding the string type (string/bytes/bigarray)
type 't tstring_ops = {kind : 't tstring_kind option;length : 't -> int;get : 't -> int -> char;unsafe_get : 't -> int -> char;unsafe_get3 : 't -> int -> int;(*get 3 chars packed into one int (first char shifted by 16 bits, second char shifted by 8 bits, third char unshifted)
*)copy : 't -> 't;string : 't -> string;(*if possible this function does not make a copy
*)bytes : 't -> Bytes.t;(*if possible this function does not make a copy
*)sub : 't -> int -> int -> 't;substring : 't -> int -> int -> string;subbytes : 't -> int -> int -> Bytes.t;subpoly : 'u. 'u tstring_kind -> 't -> int -> int -> 'u;blit_to_bytes : 't -> int -> Bytes.t -> int -> int -> unit;blit_to_memory : 't -> int -> Netsys_types.memory -> int -> int -> unit;index_from : 't -> int -> char -> int;index_from3 : 't -> int -> int -> char -> char -> char -> int;(*finds any of three chars. The second int is the search radius
*)rindex_from : 't -> int -> char -> int;rindex_from3 : 't -> int -> int -> char -> char -> char -> int;(*finds any of three chars. The second int is the search radius
*)
}Operations to call on strings
type tstring_ops_box = | Tstring_ops_box : 't tstring_kind * 't tstring_ops -> tstring_ops_box
GADT for hiding the type parameter
GADT for hiding the type parameter
GADT for hiding the type parameter. Warning: This GADT does not permit you to recover the kind of string
Implementation of the operations for string
Implementation of the operations for string
Implementation of the operations for bytes
Implementation of the operations for bytes
Implementation of the operations for memory
Create a Tstring_ops_box
A polymorphic function for strings
with_tstring f ts: Calls f.with_fun with the right implementation of the tstring_ops argument
Get the length of a tagged string
Get the tagged string of a tagged buffer
val polymorph_string_transformation :
(string -> string) ->
's tstring_ops ->
't tstring_kind ->
's ->
'tpolymorph_string_transformation f ops kind s: Converts s to a string, runs f on this string, and converts the result to the type demanded by kind