# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4

PortSystem          1.0
PortGroup           ocaml 1.1
PortGroup           github 1.0

name                ocaml-markup
github.setup        aantron markup.ml 1.0.3
# Change github.tarball_from to 'releases' or 'archive' next update
github.tarball_from tarball
revision            0
categories          ocaml devel
maintainers         {pguyot @pguyot} openmaintainer
license             MIT

description         Error-recovering functional HTML5 and XML parsers and writers
long_description    Markup.ml provides an HTML parser and an XML parser. The \
                    parsers are wrapped in a simple interface: they are \
                    functions that transform byte streams to parsing signal \
                    streams. Streams can be manipulated in various ways, such \
                    as processing by fold, filter, and map, assembly into DOM \
                    tree structures, or serialization back to HTML or XML. \
                    \
                    Both parsers are based on their respective standards. The \
                    HTML parser, in particular, is based on the state machines \
                    defined in HTML5. \
                    \
                    The parsers are error-recovering by default, and accept \
                    fragments. This makes it very easy to get a best-effort \
                    parse of some input. The parsers can, however, be easily \
                    configured to be strict, and to accept only full documents. \
                    \
                    Apart from this, the parsers are streaming (do not build up \
                    a document in memory), non-blocking (can be used with \
                    threading libraries), lazy (do not consume input unless the \
                    signal stream is being read), and process the input in a \
                    single pass. They automatically detect the character \
                    encoding of the input stream, and convert everything to \
                    UTF-8.

checksums           rmd160  02b0880d36792be597a48b98056c76652063d265 \
                    sha256  d6f289bd011aa21d139de71cdd4fb1724083901527a7498e70a1baaaab2d2f97 \
                    size    281596

depends_lib-append  port:ocaml-uutf

ocaml.build_type    dune
