package ostap

  1. Overview
  2. Docs

Module Ostap.CombinatorsSource

Sourcemodule HashCons : sig ... end
Sourcemodule Mem : sig ... end
Sourceval join : (< add : 'a -> 'a.. > as 'a) option -> 'a option -> 'a option
Sourceval (<@>) : ('stream, 'b, < add : 'a -> 'a.. > as 'a) Types.result -> ('stream, 'b, 'a) Types.result -> ('stream, 'b, 'a) Types.result
Sourceval memo_k : ('a -> (< equal : 'd -> bool.. > as 'd) -> ('b * 'd, 'c) Types.tag) -> 'a -> 'd -> ('b * 'd, 'c) Types.tag
Sourceval return : 'a -> 'b -> ('a -> 'b -> 'c) -> 'c
Sourceval cast : ('a, 'b) Types.tag -> ('c, 'b) Types.tag
Sourceval map : ('a -> 'b) -> ('c -> ('a -> (< equal : 'd -> bool.. > as 'd) -> ('e * 'd, 'f) Types.tag) -> 'g) -> 'c -> ('b -> 'd -> ('e * 'd, 'f) Types.tag) -> 'g
Sourceval (-->) : ('a -> ('b -> (< equal : 'c -> bool.. > as 'c) -> ('d * 'c, 'e) Types.tag) -> 'f) -> ('b -> 'g) -> 'a -> ('g -> 'c -> ('d * 'c, 'e) Types.tag) -> 'f
Sourceval empty : 'a -> (unit -> 'a -> 'b) -> 'b
Sourceval fail : 'a option -> 'b -> 'c -> ('d, 'a) Types.tag
Sourceval lift : 'a -> ('a -> 'a -> 'b) -> 'b
Sourceval sink : ('a -> 'b -> ('c * 'd, 'e) Types.tag) -> 'a -> 'b -> ('c * 'c, 'e) Types.tag
Sourceval memoresult : (('a -> (< equal : 'b -> bool.. > as 'b) -> ('c * 'b, < add : 'd -> 'd.. > as 'd) Types.tag) -> ('e * 'b, < add : 'f -> 'f.. > as 'f) Types.tag) -> ('a, 'b, 'e, 'f) Types.K.t -> ('e * 'b, 'f) Types.tag
Sourceval memo : ((< equal : 'c -> bool.. > as 'c) -> ('a -> 'c -> ('d * 'c, < add : 'e -> 'e.. > as 'e) Types.tag) -> ('b * 'c, < add : 'f -> 'f.. > as 'f) Types.tag) -> 'c -> ('a, 'c, 'b, 'f) Types.K.t -> ('b * 'c, 'f) Types.tag
Sourceval alt : ((< equal : 'a -> bool.. > as 'a) -> ('b -> 'a -> ('c * 'a, < add : 'd -> 'd.. > as 'd) Types.tag) -> ('e * 'a, < add : 'f -> 'f.. > as 'f) Types.tag) -> ('a -> ('b -> 'a -> ('c * 'a, 'd) Types.tag) -> ('a, 'e, 'f) Types.result) -> 'a -> ('b, 'a, 'e, 'f) Types.K.t -> ('e * 'a, 'f) Types.tag
Sourceval (<|>) : ((< equal : 'a -> bool.. > as 'a) -> ('b -> 'a -> ('c * 'a, < add : 'd -> 'd.. > as 'd) Types.tag) -> ('e * 'a, < add : 'f -> 'f.. > as 'f) Types.tag) -> ('a -> ('b -> 'a -> ('c * 'a, 'd) Types.tag) -> ('a, 'e, 'f) Types.result) -> 'a -> ('b, 'a, 'e, 'f) Types.K.t -> ('e * 'a, 'f) Types.tag
Sourceval seq : ('a -> ('b -> (< equal : 'c -> bool.. > as 'c) -> ('d * 'c, 'e) Types.tag) -> 'f) -> ('b -> 'c -> 'g -> ('d * 'c, 'e) Types.tag) -> 'a -> 'g -> 'f
Sourceval (|>) : ('a -> ('b -> (< equal : 'c -> bool.. > as 'c) -> ('d * 'c, 'e) Types.tag) -> 'f) -> ('b -> 'c -> 'g -> ('d * 'c, 'e) Types.tag) -> 'a -> 'g -> 'f
Sourceval opt : ((< equal : 'a -> bool.. > as 'a) -> ('b -> 'a -> ('c * 'a, < add : 'd -> 'd.. > as 'd) Types.tag) -> ('a, 'c, 'd) Types.result) -> 'a -> ('b option, 'a, 'c, 'd) Types.K.t -> ('c * 'a, 'd) Types.tag
Sourceval (<?>) : ((< equal : 'a -> bool.. > as 'a) -> ('b -> 'a -> ('c * 'a, < add : 'd -> 'd.. > as 'd) Types.tag) -> ('a, 'c, 'd) Types.result) -> 'a -> ('b option, 'a, 'c, 'd) Types.K.t -> ('c * 'a, 'd) Types.tag
Sourceval manyFold : ('a -> 'b -> 'b) -> 'b -> ((< equal : 'c -> bool.. > as 'c) -> ('a -> 'c -> ('d * 'c, < add : 'e -> 'e.. > as 'e) Types.tag) -> ('c, 'd, 'e) Types.result) -> 'c -> ('b -> 'c -> ('d * 'c, 'e) Types.tag) -> ('d * 'c, 'e) Types.tag
Sourceval many : ('a, < equal : 'c -> bool.. > as 'c, 'b, < add : 'd -> 'd.. > as 'd) Types.parser -> ('a list, 'c, 'b, 'd) Types.parser
Sourceval (<*>) : ('a, < equal : 'b -> bool.. > as 'b, 'c, < add : 'd -> 'd.. > as 'd) Types.parser -> ('a list, 'b, 'c, 'd) Types.parser
Sourceval someFold : ('a -> 'b -> 'b) -> 'b -> ((< equal : 'c -> bool.. > as 'c) -> ('a -> 'c -> ('d * 'c, < add : 'e -> 'e.. > as 'e) Types.tag) -> ('c, 'd, 'e) Types.result) -> 'c -> ('b -> 'c -> ('d * 'c, 'e) Types.tag) -> ('c, 'd, 'e) Types.result
Sourceval some : ('a, < equal : 'c -> bool.. > as 'c, 'b, < add : 'd -> 'd.. > as 'd) Types.parser -> ('a list, 'c, 'b, 'd) Types.parser
Sourceval (<+>) : ('a, < equal : 'b -> bool.. > as 'b, 'c, < add : 'd -> 'd.. > as 'd) Types.parser -> ('a list, 'b, 'c, 'd) Types.parser
Sourceval guard : ('a -> ('b -> (< equal : 'c -> bool.. > as 'c) -> ('d * 'c, 'e) Types.tag) -> 'f) -> ('b -> bool) -> ('b -> 'e) option -> 'a -> ('b -> 'c -> ('d * 'c, 'e) Types.tag) -> 'f
Sourceval unwrap : ('a * 'b, 'c) Types.tag -> ('a -> 'd) -> ('c option -> 'd) -> 'd
Sourceval altl : ((< equal : 'a -> bool.. > as 'a) -> ('b, 'a, 'c, < add : 'd -> 'd.. > as 'd) Types.K.t -> ('a, 'c, 'd) Types.result) list -> 'a -> ('b, 'a, 'c, 'd) Types.K.t -> ('c * 'a, 'd) Types.tag
Sourceval comment : ('a -> 'b -> ('c, < comment : 'e -> 'd.. > as 'd) Types.tag) -> 'e -> 'a -> 'b -> ('c, 'd) Types.tag
Sourceval fix : (('a -> 'b) -> 'a -> 'b) -> 'a -> 'b
Sourceval fixPoly : (('a -> 'b) array -> 'a -> 'b) array -> ('a -> 'b) array
OCaml

Innovation. Community. Security.