+19
-1
.gitignore
+19
-1
.gitignore
···
+1
.ocamlformat
+1
.ocamlformat
···
+53
.tangled/workflows/build.yml
+53
.tangled/workflows/build.yml
···
+15
LICENSE.md
+15
LICENSE.md
···
+62
README.md
+62
README.md
···+Yamlt provides YAML streaming encode/decode that interprets Jsont.t type descriptions, allowing the same codec definitions to work for both JSON and YAML.
+5
dune
+5
dune
+10
-1
dune-project
+10
-1
dune-project
······
+549
-450
lib/yamlt.ml
+549
-450
lib/yamlt.ml
············-and decode_scalar : type a. decoder -> nest:int -> Event.spanned -> string -> Scalar_style.t -> a t -> a =-and decode_any_scalar : type a. decoder -> Event.spanned -> string -> Scalar_style.t -> a t -> a any_map -> a =-and decode_array : type a elt b. decoder -> nest:int -> Event.spanned -> (a, elt, b) array_map -> a =-and decode_any_sequence : type a. decoder -> nest:int -> Event.spanned -> a t -> a any_map -> a =············-and decode_any_mapping : type a. decoder -> nest:int -> Event.spanned -> a t -> a any_map -> a =···············
+176
-104
lib/yamlt.mli
+176
-104
lib/yamlt.mli
·········
+27
-1
tests/bin/dune
+27
-1
tests/bin/dune
······
+16
-11
tests/bin/test_array_variants.ml
+16
-11
tests/bin/test_array_variants.ml
···
+88
-92
tests/bin/test_arrays.ml
+88
-92
tests/bin/test_arrays.ml
·········-Printf.sprintf "[%s]" (String.concat "; " (Array.to_list (Array.map (Printf.sprintf "%S") t.items)))······························
+58
-45
tests/bin/test_complex.ml
+58
-45
tests/bin/test_complex.ml
························
+96
tests/bin/test_comprehensive.ml
+96
tests/bin/test_comprehensive.ml
···
+40
-38
tests/bin/test_edge.ml
+40
-38
tests/bin/test_edge.ml
·····················-|> Jsont.Object.mem "empty_object_array" (Jsont.array (Jsont.null ())) ~enc:(fun d -> d.empty_object_array)···············
+21
tests/bin/test_flow_newline.ml
+21
tests/bin/test_flow_newline.ml
···
+52
-58
tests/bin/test_formats.ml
+52
-58
tests/bin/test_formats.ml
·············································
+270
tests/bin/test_locations.ml
+270
tests/bin/test_locations.ml
···
+240
tests/bin/test_multidoc.ml
+240
tests/bin/test_multidoc.ml
···
+89
tests/bin/test_null_collections.ml
+89
tests/bin/test_null_collections.ml
···
+18
-12
tests/bin/test_null_complete.ml
+18
-12
tests/bin/test_null_complete.ml
······-| Ok v -> Printf.printf "Result: %s\n" (match v with None -> "None" | Some s -> "Some(" ^ s ^ ")")-| Ok v -> Printf.printf "Result: %s\n" (match v with None -> "None" | Some s -> "Some(" ^ s ^ ")")···
+19
-18
tests/bin/test_null_fix.ml
+19
-18
tests/bin/test_null_fix.ml
···
+68
-73
tests/bin/test_objects.ml
+68
-73
tests/bin/test_objects.ml
················································
+9
-6
tests/bin/test_opt_array.ml
+9
-6
tests/bin/test_opt_array.ml
···
+158
-88
tests/bin/test_roundtrip.ml
+158
-88
tests/bin/test_roundtrip.ml
······-Jsont.Object.map ~kind:"Data" (fun required optional nullable -> { required; optional; nullable })···
+105
-100
tests/bin/test_scalars.ml
+105
-100
tests/bin/test_scalars.ml
·······································
+20
-14
tests/bin/test_some_vs_option.ml
+20
-14
tests/bin/test_some_vs_option.ml
···
+12
-7
tests/cram/arrays_codec.t
+12
-7
tests/cram/arrays_codec.t
······
+1
-4
tests/cram/complex_codec.t
+1
-4
tests/cram/complex_codec.t
···
+3
-1
tests/cram/dune
+3
-1
tests/cram/dune
+10
-10
tests/cram/formats_codec.t
+10
-10
tests/cram/formats_codec.t
·········
+217
tests/cram/locations.t
+217
tests/cram/locations.t
···
+220
tests/cram/multidoc.t
+220
tests/cram/multidoc.t
···
+37
tests/cram/null_collections.t
+37
tests/cram/null_collections.t
···
+2
-2
tests/cram/objects_codec.t
+2
-2
tests/cram/objects_codec.t
···
+1
-4
tests/cram/scalars_codec.t
+1
-4
tests/cram/scalars_codec.t
+6
tests/data/locations/array_error.yml
+6
tests/data/locations/array_error.yml
+1
tests/data/locations/flow_style.yml
+1
tests/data/locations/flow_style.yml
···
+5
tests/data/locations/nested_error.yml
+5
tests/data/locations/nested_error.yml
+9
tests/data/multidoc/all_errors.yml
+9
tests/data/multidoc/all_errors.yml
+12
tests/data/multidoc/arrays.yml
+12
tests/data/multidoc/arrays.yml
+7
tests/data/multidoc/empty_docs.yml
+7
tests/data/multidoc/empty_docs.yml
+9
tests/data/multidoc/missing_fields.yml
+9
tests/data/multidoc/missing_fields.yml
+9
tests/data/multidoc/mixed_errors.yml
+9
tests/data/multidoc/mixed_errors.yml
+18
tests/data/multidoc/nested.yml
+18
tests/data/multidoc/nested.yml
+8
tests/data/multidoc/scalars.yml
+8
tests/data/multidoc/scalars.yml
+9
tests/data/multidoc/simple.yml
+9
tests/data/multidoc/simple.yml
+5
yamlt.opam
+5
yamlt.opam
···