Module type BatPathGen.StringType

module type StringType = sig .. end

This signature lists few basic operations provided by all string types.


The actual implementation may use any (coherent) scheme of indexing of strings. Below the term 'indexing unit' can stay either for byte or character (or whatever employed by the implementation). This determines meaning of all int arguments and results (excluding result of compare).

type t 

Type for strings.

val length : t -> int

Length - number of indexing units

type tchar 

Character type used by t.

val get : t -> int -> tchar

Usual get function.

val lift_char : char -> tchar

Convert Latin-1 character to tchar.

val lift : string -> t

Convert from UTF-8 string of primitive string type.

val to_string : t -> string

Convert to primitive string with UTF-8 content.

val concat_with_separators : t ->
t list -> t

concat_with_separators sep lst catenates all n elements of lst inserting (n-1) copies of sep in between.

val compare : t -> t -> int

Usual comparison function.

val iter : (tchar -> unit) -> t -> unit
val iteri : (int -> tchar -> unit) ->
t -> unit
val sub : t -> int -> int -> t

As String.sub, but indexed in specific way.

val rindex : t -> char -> int
module Parse: sig .. end