Library
Module
Module type
Parameter
Class
Class type
Lwt interface to Markup.ml.
The majority of the functions in this interface are listed in the signature Markup.ASYNCHRONOUS
, and are not directly included on this page. There are also additional Lwt functions in module Markup_lwt_unix
. Those are based on Lwt_io
, and have been separated to make this module Markup_lwt
usable on js_of_ocaml
, which does not support Lwt_io
.
This module is available if Markup.ml is installed when Lwt is installed, i.e.
opam install lwt markup
To link with this module, depend on the findlib package markup.lwt
instead of package markup
.
include Markup.ASYNCHRONOUS with type 'a io := 'a Lwt.t
module Encoding : sig ... end
Asynchronous counterpart to Markup.Encoding
.
val parse_xml :
?report:(Markup.location -> Markup.Error.t -> unit Lwt.t) ->
?encoding:Encoding.t ->
?namespace:(string -> string option) ->
?entity:(string -> string option) ->
?context:[< `Document | `Fragment ] ->
(char, _) Markup.stream ->
Markup.async Markup.parser
val write_xml :
?report:((Markup.signal * int) -> Markup.Error.t -> unit Lwt.t) ->
?prefix:(string -> string option) ->
([< Markup.signal ], _) Markup.stream ->
(char, Markup.async) Markup.stream
val parse_html :
?report:(Markup.location -> Markup.Error.t -> unit Lwt.t) ->
?encoding:Encoding.t ->
?context:[< `Document | `Fragment of string ] ->
(char, _) Markup.stream ->
Markup.async Markup.parser
val write_html :
?escape_attribute:(string -> string) ->
?escape_text:(string -> string) ->
([< Markup.signal ], _) Markup.stream ->
(char, Markup.async) Markup.stream
val fn : (unit -> char option Lwt.t) -> (char, Markup.async) Markup.stream
val to_string : (char, _) Markup.stream -> string Lwt.t
val to_buffer : (char, _) Markup.stream -> Buffer.t Lwt.t
val stream : (unit -> 'a option Lwt.t) -> ('a, Markup.async) Markup.stream
val next : ('a, _) Markup.stream -> 'a option Lwt.t
val peek : ('a, _) Markup.stream -> 'a option Lwt.t
val transform :
('a -> 'b -> ('c list * 'a option) Lwt.t) ->
'a ->
('b, _) Markup.stream ->
('c, Markup.async) Markup.stream
val fold : ('a -> 'b -> 'a Lwt.t) -> 'a -> ('b, _) Markup.stream -> 'a Lwt.t
val map :
('a -> 'b Lwt.t) ->
('a, _) Markup.stream ->
('b, Markup.async) Markup.stream
val filter :
('a -> bool Lwt.t) ->
('a, _) Markup.stream ->
('a, Markup.async) Markup.stream
val filter_map :
('a -> 'b option Lwt.t) ->
('a, _) Markup.stream ->
('b, Markup.async) Markup.stream
val iter : ('a -> unit Lwt.t) -> ('a, _) Markup.stream -> unit Lwt.t
val drain : ('a, _) Markup.stream -> unit Lwt.t
val to_list : ('a, _) Markup.stream -> 'a list Lwt.t
val load : ('a, _) Markup.stream -> ('a, Markup.sync) Markup.stream Lwt.t
load s
converts a general stream s
to a synchronous stream by buffering it.
val tree :
?text:(string list -> 'a) ->
?element:(Markup.name -> (Markup.name * string) list -> 'a list -> 'a) ->
?comment:(string -> 'a) ->
?pi:(string -> string -> 'a) ->
?xml:(Markup.xml_declaration -> 'a) ->
?doctype:(Markup.doctype -> 'a) ->
([< Markup.signal ], _) Markup.stream ->
'a option Lwt.t
val lwt_stream : 'a Lwt_stream.t -> ('a, Markup.async) Markup.stream
Adapts an Lwt stream to a Markup.ml stream.
val to_lwt_stream : ('a, _) Markup.stream -> 'a Lwt_stream.t
Adapts a Markup.ml stream to an Lwt stream.
val ensure_tail_calls : ?hook:(exn -> unit) ref -> unit -> unit