This commit is contained in:
parent
aa2ff7b2f0
commit
2f3113f55d
11742 changed files with 1223940 additions and 0 deletions
84
unikernel/duniverse/ocaml-re/lib/cset.mli
Normal file
84
unikernel/duniverse/ocaml-re/lib/cset.mli
Normal file
|
|
@ -0,0 +1,84 @@
|
|||
(*
|
||||
RE - A regular expression library
|
||||
|
||||
Copyright (C) 2001 Jerome Vouillon
|
||||
email: Jerome.Vouillon@pps.jussieu.fr
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation, with
|
||||
linking exception; either version 2.1 of the License, or (at
|
||||
your option) any later version.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
*)
|
||||
|
||||
(* Character sets, represented as sorted list of intervals *)
|
||||
|
||||
type c [@@immediate]
|
||||
|
||||
val equal_c : c -> c -> bool
|
||||
val to_int : c -> int
|
||||
val of_int : int -> c
|
||||
val to_char : c -> char
|
||||
val of_char : char -> c
|
||||
|
||||
type t
|
||||
|
||||
(** special characters which isn't present in any set (not even in [cany]) *)
|
||||
val null_char : c
|
||||
|
||||
val equal : t -> t -> bool
|
||||
val iter : t -> f:(c -> c -> unit) -> unit
|
||||
val union : t -> t -> t
|
||||
val union_all : t list -> t
|
||||
val intersect_all : t list -> t
|
||||
val inter : t -> t -> t
|
||||
val diff : t -> t -> t
|
||||
val empty : t
|
||||
val single : c -> t
|
||||
val add : c -> t -> t
|
||||
val mem : c -> t -> bool
|
||||
val case_insens : t -> t
|
||||
val cdigit : t
|
||||
val calpha : t
|
||||
val cword : t
|
||||
val notnl : t
|
||||
val ascii : t
|
||||
val nl : t
|
||||
val cseq : char -> char -> t
|
||||
val set : string -> t
|
||||
val blank : t
|
||||
val space : t
|
||||
val xdigit : t
|
||||
val lower : t
|
||||
val upper : t
|
||||
val alpha : t
|
||||
val alnum : t
|
||||
val wordc : t
|
||||
val cntrl : t
|
||||
val graph : t
|
||||
val print : t
|
||||
val punct : t
|
||||
val pp : t Fmt.t
|
||||
val one_char : t -> c option
|
||||
val fold_right : t -> init:'acc -> f:(c -> c -> 'acc -> 'acc) -> 'acc
|
||||
val hash : t -> int
|
||||
val compare : t -> t -> int
|
||||
|
||||
module CSetMap : Map.S with type key = int * t
|
||||
|
||||
val cany : t
|
||||
val csingle : char -> t
|
||||
val is_empty : t -> bool
|
||||
val prepend : t -> 'a list -> (t * 'a list) list -> (t * 'a list) list
|
||||
val pick : t -> c
|
||||
val offset : int -> t -> t
|
||||
val to_dyn : t -> Dyn.t
|
||||
Loading…
Add table
Add a link
Reference in a new issue