@greenlabs/ppx-spice 0.1.8 → 0.1.9-rc1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +4 -0
- package/README.md +4 -0
- package/docs/GUIDE.md +139 -0
- package/package.json +1 -1
- package/ppx-windows.exe +0 -0
- package/.github/workflows/build_linux.yml +0 -41
- package/.github/workflows/build_macos.yml +0 -41
- package/.github/workflows/build_windows.yml +0 -41
- package/.github/workflows/print_esy_cache.js +0 -13
- package/.github/workflows/publish.yml +0 -161
- package/.github/workflows/publish_prerelease.yml +0 -177
- package/.vscode/settings.json +0 -6
- package/src/.ocamlformat +0 -0
- package/src/bin/bin.ml +0 -1
- package/src/bin/dune +0 -5
- package/src/dune +0 -1
- package/src/dune-project +0 -2
- package/src/dune-workspace +0 -3
- package/src/esy.lock/.gitattributes +0 -3
- package/src/esy.lock/.gitignore +0 -3
- package/src/esy.lock/index.json +0 -1196
- package/src/esy.lock/opam/astring.0.8.5/opam +0 -37
- package/src/esy.lock/opam/base-bytes.base/opam +0 -9
- package/src/esy.lock/opam/base-threads.base/opam +0 -6
- package/src/esy.lock/opam/base-unix.base/opam +0 -6
- package/src/esy.lock/opam/base.v0.14.1/opam +0 -36
- package/src/esy.lock/opam/biniou.1.2.1/opam +0 -45
- package/src/esy.lock/opam/cmdliner.1.0.4/opam +0 -36
- package/src/esy.lock/opam/cppo.1.6.8/opam +0 -37
- package/src/esy.lock/opam/csexp.1.5.1/opam +0 -60
- package/src/esy.lock/opam/dot-merlin-reader.4.1/opam +0 -30
- package/src/esy.lock/opam/dune-build-info.2.9.1/opam +0 -42
- package/src/esy.lock/opam/dune-configurator.2.9.1/opam +0 -47
- package/src/esy.lock/opam/dune.2.9.1/opam +0 -58
- package/src/esy.lock/opam/easy-format.1.3.2/opam +0 -46
- package/src/esy.lock/opam/fix.20201120/opam +0 -24
- package/src/esy.lock/opam/fpath.0.7.3/opam +0 -36
- package/src/esy.lock/opam/menhir.20211012/opam +0 -28
- package/src/esy.lock/opam/menhirLib.20211012/opam +0 -29
- package/src/esy.lock/opam/menhirSdk.20211012/opam +0 -29
- package/src/esy.lock/opam/ocaml-compiler-libs.v0.12.4/opam +0 -39
- package/src/esy.lock/opam/ocaml-lsp-server.1.8.3/opam +0 -54
- package/src/esy.lock/opam/ocamlbuild.0.14.0/opam +0 -36
- package/src/esy.lock/opam/ocamlfind.1.9.1/opam +0 -44
- package/src/esy.lock/opam/ocamlformat-rpc-lib.0.18.0/opam +0 -40
- package/src/esy.lock/opam/ocamlformat.0.19.0/opam +0 -55
- package/src/esy.lock/opam/ocp-indent.1.8.1/opam +0 -57
- package/src/esy.lock/opam/odoc-parser.0.9.0/opam +0 -45
- package/src/esy.lock/opam/pp.1.1.2/opam +0 -58
- package/src/esy.lock/opam/ppx_derivers.1.2.1/opam +0 -23
- package/src/esy.lock/opam/ppx_yojson_conv_lib.v0.14.0/opam +0 -24
- package/src/esy.lock/opam/ppxlib.0.23.0/opam +0 -62
- package/src/esy.lock/opam/re.1.10.3/opam +0 -46
- package/src/esy.lock/opam/result.1.5/opam +0 -22
- package/src/esy.lock/opam/seq.base/files/META.seq +0 -4
- package/src/esy.lock/opam/seq.base/files/seq.install +0 -3
- package/src/esy.lock/opam/seq.base/opam +0 -15
- package/src/esy.lock/opam/sexplib0.v0.14.0/opam +0 -26
- package/src/esy.lock/opam/stdio.v0.14.0/opam +0 -27
- package/src/esy.lock/opam/stdlib-shims.0.3.0/opam +0 -31
- package/src/esy.lock/opam/topkg.1.0.4/opam +0 -44
- package/src/esy.lock/opam/uchar.0.0.2/opam +0 -36
- package/src/esy.lock/opam/uucp.14.0.0/opam +0 -41
- package/src/esy.lock/opam/uuseg.14.0.0/opam +0 -43
- package/src/esy.lock/opam/uutf.1.0.2/opam +0 -40
- package/src/esy.lock/opam/yojson.1.7.0/opam +0 -38
- package/src/esy.lock/overrides/opam__s__ocamlbuild_opam__c__0.14.0_opam_override/files/ocamlbuild-0.14.0.patch +0 -463
- package/src/esy.lock/overrides/opam__s__ocamlbuild_opam__c__0.14.0_opam_override/package.json +0 -27
- package/src/esy.lock/overrides/opam__s__ocamlfind_opam__c__1.9.1_opam_override/files/findlib-1.9.1.patch +0 -471
- package/src/esy.lock/overrides/opam__s__ocamlfind_opam__c__1.9.1_opam_override/package.json +0 -61
- package/src/ppx/codecs.ml +0 -120
- package/src/ppx/decode_cases.ml +0 -18
- package/src/ppx/dune +0 -9
- package/src/ppx/polyvariants.ml +0 -288
- package/src/ppx/ppx_spice.ml +0 -19
- package/src/ppx/records.ml +0 -163
- package/src/ppx/signature.ml +0 -86
- package/src/ppx/structure.ml +0 -109
- package/src/ppx/tuple.ml +0 -68
- package/src/ppx/utils.ml +0 -117
- package/src/ppx/variants.ml +0 -257
- package/src/ppx_spice.opam +0 -21
- package/test/__tests__/test_optional_field_records.js +0 -91
- package/test/__tests__/test_optional_field_records.res +0 -98
- package/test/__tests__/test_polyvariants.js +0 -57
- package/test/__tests__/test_polyvariants.res +0 -41
- package/test/__tests__/test_records.js +0 -100
- package/test/__tests__/test_records.res +0 -111
- package/test/__tests__/test_variants.js +0 -85
- package/test/__tests__/test_variants.res +0 -63
- package/test/bsconfig.json +0 -27
- package/test/package.json +0 -18
- package/test/src/OptionalFieldRecords.js +0 -237
- package/test/src/OptionalFieldRecords.res +0 -23
- package/test/src/Polyvariants.js +0 -94
- package/test/src/Polyvariants.res +0 -5
- package/test/src/Polyvariants.resi +0 -5
- package/test/src/Records.js +0 -186
- package/test/src/Records.res +0 -17
- package/test/src/Records.resi +0 -17
- package/test/src/Spice.js +0 -448
- package/test/src/Spice_Codecs.js +0 -57
- package/test/src/Variants.js +0 -115
- package/test/src/Variants.res +0 -11
- package/test/src/Variants.resi +0 -11
- package/test/yarn.lock +0 -4194
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
opam-version: "2.0"
|
|
2
|
-
maintainer: "Jane Street developers"
|
|
3
|
-
authors: ["Jane Street Group, LLC"]
|
|
4
|
-
homepage: "https://github.com/janestreet/stdio"
|
|
5
|
-
bug-reports: "https://github.com/janestreet/stdio/issues"
|
|
6
|
-
dev-repo: "git+https://github.com/janestreet/stdio.git"
|
|
7
|
-
doc: "https://ocaml.janestreet.com/ocaml-core/latest/doc/stdio/index.html"
|
|
8
|
-
license: "MIT"
|
|
9
|
-
build: [
|
|
10
|
-
["dune" "build" "-p" name "-j" jobs]
|
|
11
|
-
]
|
|
12
|
-
depends: [
|
|
13
|
-
"ocaml" {>= "4.04.2"}
|
|
14
|
-
"base" {>= "v0.14" & < "v0.15"}
|
|
15
|
-
"dune" {>= "2.0.0"}
|
|
16
|
-
]
|
|
17
|
-
synopsis: "Standard IO library for OCaml"
|
|
18
|
-
description: "
|
|
19
|
-
Stdio implements simple input/output functionalities for OCaml.
|
|
20
|
-
|
|
21
|
-
It re-exports the input/output functions of the OCaml standard
|
|
22
|
-
libraries using a more consistent API.
|
|
23
|
-
"
|
|
24
|
-
url {
|
|
25
|
-
src: "https://ocaml.janestreet.com/ocaml-core/v0.14/files/stdio-v0.14.0.tar.gz"
|
|
26
|
-
checksum: "md5=4cbdf15f0be88c3258aaeff9e04e00e9"
|
|
27
|
-
}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
opam-version: "2.0"
|
|
2
|
-
maintainer: "The stdlib-shims programmers"
|
|
3
|
-
authors: "The stdlib-shims programmers"
|
|
4
|
-
homepage: "https://github.com/ocaml/stdlib-shims"
|
|
5
|
-
doc: "https://ocaml.github.io/stdlib-shims/"
|
|
6
|
-
dev-repo: "git+https://github.com/ocaml/stdlib-shims.git"
|
|
7
|
-
bug-reports: "https://github.com/ocaml/stdlib-shims/issues"
|
|
8
|
-
tags: ["stdlib" "compatibility" "org:ocaml"]
|
|
9
|
-
license: ["typeof OCaml system"]
|
|
10
|
-
depends: [
|
|
11
|
-
"dune"
|
|
12
|
-
"ocaml" {>= "4.02.3"}
|
|
13
|
-
]
|
|
14
|
-
build: [ "dune" "build" "-p" name "-j" jobs ]
|
|
15
|
-
synopsis: "Backport some of the new stdlib features to older compiler"
|
|
16
|
-
description: """
|
|
17
|
-
Backport some of the new stdlib features to older compiler,
|
|
18
|
-
such as the Stdlib module.
|
|
19
|
-
|
|
20
|
-
This allows projects that require compatibility with older compiler to
|
|
21
|
-
use these new features in their code.
|
|
22
|
-
"""
|
|
23
|
-
x-commit-hash: "fb6815e5d745f07fd567c11671149de6ef2e74c8"
|
|
24
|
-
url {
|
|
25
|
-
src:
|
|
26
|
-
"https://github.com/ocaml/stdlib-shims/releases/download/0.3.0/stdlib-shims-0.3.0.tbz"
|
|
27
|
-
checksum: [
|
|
28
|
-
"sha256=babf72d3917b86f707885f0c5528e36c63fccb698f4b46cf2bab5c7ccdd6d84a"
|
|
29
|
-
"sha512=1151d7edc8923516e9a36995a3f8938d323aaade759ad349ed15d6d8501db61ffbe63277e97c4d86149cf371306ac23df0f581ec7e02611f58335126e1870980"
|
|
30
|
-
]
|
|
31
|
-
}
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
opam-version: "2.0"
|
|
2
|
-
synopsis: """The transitory OCaml software packager"""
|
|
3
|
-
maintainer: ["Daniel Bünzli <daniel.buenzl i@erratique.ch>"]
|
|
4
|
-
authors: ["The topkg programmers"]
|
|
5
|
-
homepage: "https://erratique.ch/software/topkg"
|
|
6
|
-
doc: "https://erratique.ch/software/topkg/doc"
|
|
7
|
-
dev-repo: "git+https://erratique.ch/repos/topkg.git"
|
|
8
|
-
bug-reports: "https://github.com/dbuenzli/topkg/issues"
|
|
9
|
-
license: ["ISC"]
|
|
10
|
-
tags: ["packaging" "ocamlbuild" "org:erratique"]
|
|
11
|
-
depends: ["ocaml" {>= "4.03.0"}
|
|
12
|
-
"ocamlfind" {build & >= "1.6.1"}
|
|
13
|
-
"ocamlbuild"]
|
|
14
|
-
build: [["ocaml" "pkg/pkg.ml" "build" "--pkg-name" name
|
|
15
|
-
"--dev-pkg" "%{dev}%"]]
|
|
16
|
-
url {
|
|
17
|
-
src: "https://erratique.ch/software/topkg/releases/topkg-1.0.4.tbz"
|
|
18
|
-
checksum: "sha512=5baa1bf0105397589b741acd0195069823548b2051e453dffd641e5d00536b7a5f41b38d005b2b063f9e7cfb9a3b627bec3e6ad48e56769cc35a71f97a897f1b"}
|
|
19
|
-
description: """
|
|
20
|
-
Topkg is a packager for distributing OCaml software. It provides an
|
|
21
|
-
API to describe the files a package installs in a given build
|
|
22
|
-
configuration and to specify information about the package's
|
|
23
|
-
distribution, creation and publication procedures.
|
|
24
|
-
|
|
25
|
-
The optional topkg-care package provides the `topkg` command line tool
|
|
26
|
-
which helps with various aspects of a package's life cycle: creating
|
|
27
|
-
and linting a distribution, releasing it on the WWW, publish its
|
|
28
|
-
documentation, add it to the OCaml opam repository, etc.
|
|
29
|
-
|
|
30
|
-
Topkg is distributed under the ISC license and has **no**
|
|
31
|
-
dependencies. This is what your packages will need as a *build*
|
|
32
|
-
dependency.
|
|
33
|
-
|
|
34
|
-
Topkg-care is distributed under the ISC license it depends on
|
|
35
|
-
[fmt][fmt], [logs][logs], [bos][bos], [cmdliner][cmdliner],
|
|
36
|
-
[webbrowser][webbrowser] and `opam-format`.
|
|
37
|
-
|
|
38
|
-
[fmt]: http://erratique.ch/software/fmt
|
|
39
|
-
[logs]: http://erratique.ch/software/logs
|
|
40
|
-
[bos]: http://erratique.ch/software/bos
|
|
41
|
-
[cmdliner]: http://erratique.ch/software/cmdliner
|
|
42
|
-
[webbrowser]: http://erratique.ch/software/webbrowser
|
|
43
|
-
|
|
44
|
-
Home page: http://erratique.ch/software/topkg"""
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
opam-version: "2.0"
|
|
2
|
-
maintainer: "Daniel Bünzli <daniel.buenzl i@erratique.ch>"
|
|
3
|
-
authors: ["Daniel Bünzli <daniel.buenzl i@erratique.ch>"]
|
|
4
|
-
homepage: "http://ocaml.org"
|
|
5
|
-
doc: "https://ocaml.github.io/uchar/"
|
|
6
|
-
dev-repo: "git+https://github.com/ocaml/uchar.git"
|
|
7
|
-
bug-reports: "https://github.com/ocaml/uchar/issues"
|
|
8
|
-
tags: [ "text" "character" "unicode" "compatibility" "org:ocaml.org" ]
|
|
9
|
-
license: "typeof OCaml system"
|
|
10
|
-
depends: [
|
|
11
|
-
"ocaml" {>= "3.12.0"}
|
|
12
|
-
"ocamlbuild" {build}
|
|
13
|
-
]
|
|
14
|
-
build: [
|
|
15
|
-
["ocaml" "pkg/git.ml"]
|
|
16
|
-
[
|
|
17
|
-
"ocaml"
|
|
18
|
-
"pkg/build.ml"
|
|
19
|
-
"native=%{ocaml:native}%"
|
|
20
|
-
"native-dynlink=%{ocaml:native-dynlink}%"
|
|
21
|
-
]
|
|
22
|
-
]
|
|
23
|
-
synopsis: "Compatibility library for OCaml's Uchar module"
|
|
24
|
-
description: """
|
|
25
|
-
The `uchar` package provides a compatibility library for the
|
|
26
|
-
[`Uchar`][1] module introduced in OCaml 4.03.
|
|
27
|
-
|
|
28
|
-
The `uchar` package is distributed under the license of the OCaml
|
|
29
|
-
compiler. See [LICENSE](LICENSE) for details.
|
|
30
|
-
|
|
31
|
-
[1]: http://caml.inria.fr/pub/docs/manual-ocaml/libref/Uchar.html"""
|
|
32
|
-
url {
|
|
33
|
-
src:
|
|
34
|
-
"https://github.com/ocaml/uchar/releases/download/v0.0.2/uchar-0.0.2.tbz"
|
|
35
|
-
checksum: "md5=c9ba2c738d264c420c642f7bb1cf4a36"
|
|
36
|
-
}
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
opam-version: "2.0"
|
|
2
|
-
synopsis: """Unicode character properties for OCaml"""
|
|
3
|
-
maintainer: ["Daniel Bünzli <daniel.buenzl i@erratique.ch>"]
|
|
4
|
-
authors: ["The uucp programmers"]
|
|
5
|
-
homepage: "https://erratique.ch/software/uucp"
|
|
6
|
-
doc: "https://erratique.ch/software/uucp/doc/"
|
|
7
|
-
dev-repo: "git+https://erratique.ch/repos/uucp.git"
|
|
8
|
-
bug-reports: "https://github.com/dbuenzli/uucp/issues"
|
|
9
|
-
license: ["ISC"]
|
|
10
|
-
tags: ["unicode" "text" "character" "org:erratique"]
|
|
11
|
-
depends: ["ocaml" {>= "4.03.0"}
|
|
12
|
-
"ocamlfind" {build}
|
|
13
|
-
"ocamlbuild" {build}
|
|
14
|
-
"topkg" {build & >= "1.0.3"}
|
|
15
|
-
"uucd" {with-test}
|
|
16
|
-
"uunf" {with-test}
|
|
17
|
-
"uutf" {with-test}]
|
|
18
|
-
depopts: ["uutf"
|
|
19
|
-
"uunf"
|
|
20
|
-
"cmdliner"]
|
|
21
|
-
conflicts: ["uutf" {< "1.0.1"}
|
|
22
|
-
"cmdliner" {< "1.0.0"}]
|
|
23
|
-
build: [["ocaml" "pkg/pkg.ml" "build" "--dev-pkg" "%{dev}%"
|
|
24
|
-
"--with-uutf" "%{uutf:installed}%"
|
|
25
|
-
"--with-uunf" "%{uunf:installed}%"
|
|
26
|
-
"--with-cmdliner" "%{cmdliner:installed}%" ]]
|
|
27
|
-
description: """
|
|
28
|
-
Uucp is an OCaml library providing efficient access to a selection of
|
|
29
|
-
character properties of the [Unicode character database][1].
|
|
30
|
-
|
|
31
|
-
Uucp is independent from any Unicode text data structure and has no
|
|
32
|
-
dependencies. It is distributed under the ISC license.
|
|
33
|
-
|
|
34
|
-
[1]: http://www.unicode.org/reports/tr44/
|
|
35
|
-
|
|
36
|
-
Home page: http://erratique.ch/software/uucp"""
|
|
37
|
-
url {
|
|
38
|
-
src: "https://erratique.ch/software/uucp/releases/uucp-14.0.0.tbz"
|
|
39
|
-
checksum: "sha512=2d0224aed5d5accbb121624898f08598e8c74a2415942f159a54221c0cdac62ed64fc70a039c833e50110cefce77754ada9ac2d58f79a6fc9331135326fe6899"}
|
|
40
|
-
post-messages: ["If the build fails with \"ocamlopt.opt got signal and exited\", issue 'ulimit -s unlimited' and retry."
|
|
41
|
-
{failure & (arch = "ppc64" | arch = "arm64")}]
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
opam-version: "2.0"
|
|
2
|
-
synopsis: """Unicode text segmentation for OCaml"""
|
|
3
|
-
maintainer: ["Daniel Bünzli <daniel.buenzl i@erratique.ch>"]
|
|
4
|
-
authors: ["The uuseg programmers"]
|
|
5
|
-
homepage: "https://erratique.ch/software/uuseg"
|
|
6
|
-
doc: "https://erratique.ch/software/uuseg/doc/"
|
|
7
|
-
dev-repo: "git+https://erratique.ch/repos/uuseg.git"
|
|
8
|
-
bug-reports: "https://github.com/dbuenzli/uuseg/issues"
|
|
9
|
-
license: ["ISC"]
|
|
10
|
-
tags: ["unicode" "text" "segmentation" "org:erratique"]
|
|
11
|
-
depends: ["ocaml" {>= "4.03.0"}
|
|
12
|
-
"ocamlfind" {build}
|
|
13
|
-
"ocamlbuild" {build}
|
|
14
|
-
"topkg" {build & >= "1.0.3"}
|
|
15
|
-
"uucp" {>= "14.0.0" & < "15.0.0"}]
|
|
16
|
-
depopts: ["uutf"
|
|
17
|
-
"cmdliner"]
|
|
18
|
-
conflicts: ["uutf" {< "1.0.0"}]
|
|
19
|
-
build: [["ocaml" "pkg/pkg.ml" "build" "--dev-pkg" "%{dev}%"
|
|
20
|
-
"--with-uutf" "%{uutf:installed}%"
|
|
21
|
-
"--with-cmdliner" "%{cmdliner:installed}%" ]]
|
|
22
|
-
url {
|
|
23
|
-
src: "https://erratique.ch/software/uuseg/releases/uuseg-14.0.0.tbz"
|
|
24
|
-
checksum: "sha512=3f089baf95f010663a0c2f060b2911395d9b396f478efb10fd979815f527c9e61e0a70b3192f2e921f59287bfde0da6e25109d4a1825554e2e4a50c0535e97aa"}
|
|
25
|
-
description: """
|
|
26
|
-
Uuseg is an OCaml library for segmenting Unicode text. It implements
|
|
27
|
-
the locale independent [Unicode text segmentation algorithms][1] to
|
|
28
|
-
detect grapheme cluster, word and sentence boundaries and the
|
|
29
|
-
[Unicode line breaking algorithm][2] to detect line break
|
|
30
|
-
opportunities.
|
|
31
|
-
|
|
32
|
-
The library is independent from any IO mechanism or Unicode text data
|
|
33
|
-
structure and it can process text without a complete in-memory
|
|
34
|
-
representation.
|
|
35
|
-
|
|
36
|
-
Uuseg depends on [Uucp](http://erratique.ch/software/uucp) and
|
|
37
|
-
optionally on [Uutf](http://erratique.ch/software/uutf) for support on
|
|
38
|
-
OCaml UTF-X encoded strings. It is distributed under the ISC license.
|
|
39
|
-
|
|
40
|
-
[1]: http://www.unicode.org/reports/tr29/
|
|
41
|
-
[2]: http://www.unicode.org/reports/tr14/
|
|
42
|
-
|
|
43
|
-
Homepage: http://erratique.ch/software/uuseg"""
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
opam-version: "2.0"
|
|
2
|
-
maintainer: "Daniel Bünzli <daniel.buenzl i@erratique.ch>"
|
|
3
|
-
authors: ["Daniel Bünzli <daniel.buenzl i@erratique.ch>"]
|
|
4
|
-
homepage: "http://erratique.ch/software/uutf"
|
|
5
|
-
doc: "http://erratique.ch/software/uutf/doc/Uutf"
|
|
6
|
-
dev-repo: "git+http://erratique.ch/repos/uutf.git"
|
|
7
|
-
bug-reports: "https://github.com/dbuenzli/uutf/issues"
|
|
8
|
-
tags: [ "unicode" "text" "utf-8" "utf-16" "codec" "org:erratique" ]
|
|
9
|
-
license: "ISC"
|
|
10
|
-
depends: [
|
|
11
|
-
"ocaml" {>= "4.01.0"}
|
|
12
|
-
"ocamlfind" {build}
|
|
13
|
-
"ocamlbuild" {build}
|
|
14
|
-
"topkg" {build}
|
|
15
|
-
"uchar"
|
|
16
|
-
]
|
|
17
|
-
depopts: ["cmdliner"]
|
|
18
|
-
conflicts: ["cmdliner" { < "0.9.6"} ]
|
|
19
|
-
build: [[
|
|
20
|
-
"ocaml" "pkg/pkg.ml" "build"
|
|
21
|
-
"--pinned" "%{pinned}%"
|
|
22
|
-
"--with-cmdliner" "%{cmdliner:installed}%" ]]
|
|
23
|
-
synopsis: """Non-blocking streaming Unicode codec for OCaml"""
|
|
24
|
-
description: """\
|
|
25
|
-
|
|
26
|
-
Uutf is a non-blocking streaming codec to decode and encode the UTF-8,
|
|
27
|
-
UTF-16, UTF-16LE and UTF-16BE encoding schemes. It can efficiently
|
|
28
|
-
work character by character without blocking on IO. Decoders perform
|
|
29
|
-
character position tracking and support newline normalization.
|
|
30
|
-
|
|
31
|
-
Functions are also provided to fold over the characters of UTF encoded
|
|
32
|
-
OCaml string values and to directly encode characters in OCaml
|
|
33
|
-
Buffer.t values.
|
|
34
|
-
|
|
35
|
-
Uutf has no dependency and is distributed under the ISC license.
|
|
36
|
-
"""
|
|
37
|
-
url {
|
|
38
|
-
archive: "http://erratique.ch/software/uutf/releases/uutf-1.0.2.tbz"
|
|
39
|
-
checksum: "a7c542405a39630c689a82bd7ef2292c"
|
|
40
|
-
}
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
opam-version: "2.0"
|
|
2
|
-
maintainer: "martin@mjambon.com"
|
|
3
|
-
authors: ["Martin Jambon"]
|
|
4
|
-
homepage: "https://github.com/ocaml-community/yojson"
|
|
5
|
-
bug-reports: "https://github.com/ocaml-community/yojson/issues"
|
|
6
|
-
dev-repo: "git+https://github.com/ocaml-community/yojson.git"
|
|
7
|
-
doc: "https://ocaml-community.github.io/yojson/"
|
|
8
|
-
build: [
|
|
9
|
-
["dune" "subst"] {dev}
|
|
10
|
-
["dune" "build" "-p" name "-j" jobs]
|
|
11
|
-
]
|
|
12
|
-
run-test: [["dune" "runtest" "-p" name "-j" jobs]]
|
|
13
|
-
depends: [
|
|
14
|
-
"ocaml" {>= "4.02.3"}
|
|
15
|
-
"dune"
|
|
16
|
-
"cppo" {build}
|
|
17
|
-
"easy-format"
|
|
18
|
-
"biniou" {>= "1.2.0"}
|
|
19
|
-
"alcotest" {with-test & >= "0.8.5"}
|
|
20
|
-
]
|
|
21
|
-
synopsis:
|
|
22
|
-
"Yojson is an optimized parsing and printing library for the JSON format"
|
|
23
|
-
description: """
|
|
24
|
-
Yojson is an optimized parsing and printing library for the JSON format.
|
|
25
|
-
|
|
26
|
-
It addresses a few shortcomings of json-wheel including 2x speedup,
|
|
27
|
-
polymorphic variants and optional syntax for tuples and variants.
|
|
28
|
-
|
|
29
|
-
ydump is a pretty-printing command-line program provided with the
|
|
30
|
-
yojson package.
|
|
31
|
-
|
|
32
|
-
The program atdgen can be used to derive OCaml-JSON serializers and
|
|
33
|
-
deserializers from type definitions."""
|
|
34
|
-
url {
|
|
35
|
-
src:
|
|
36
|
-
"https://github.com/ocaml-community/yojson/releases/download/1.7.0/yojson-1.7.0.tbz"
|
|
37
|
-
checksum: "md5=b89d39ca3f8c532abe5f547ad3b8f84d"
|
|
38
|
-
}
|