From 889139602b77e4387a6e8bfbedacc2a08703e976 Mon Sep 17 00:00:00 2001 From: Eduardo Julian Date: Fri, 27 Nov 2020 00:07:51 -0400 Subject: Re-named lux/data/format/context to lux/control/parser/environment. --- stdlib/source/poly/lux/data/format/json.lux | 112 ++++++++++++++-------------- 1 file changed, 55 insertions(+), 57 deletions(-) (limited to 'stdlib/source/poly') diff --git a/stdlib/source/poly/lux/data/format/json.lux b/stdlib/source/poly/lux/data/format/json.lux index 15c8c5906..719817b3b 100644 --- a/stdlib/source/poly/lux/data/format/json.lux +++ b/stdlib/source/poly/lux/data/format/json.lux @@ -5,12 +5,10 @@ [equivalence (#+ Equivalence)] ["." codec]] [control - ["e" try] - ["p" parser + ["." try] + ["<>" parser ["<.>" type] - ["" json] - ["l" text] - ["s" code]]] + ["" json]]] [data ["." bit] maybe @@ -66,7 +64,7 @@ (|> low .int int.frac #/.Number))))) (def: decode (.run (.array - (do p.monad + (do <>.monad [high .number low .number] (wrap (n.+ (|> high frac.int .nat (i64.left-shift 32)) @@ -77,7 +75,7 @@ (def: encode (|>> .nat (:: nat-codec encode))) (def: decode - (|>> (:: nat-codec decode) (:: e.functor map .int)))) + (|>> (:: nat-codec decode) (:: try.functor map .int)))) (def: (nullable writer) {#.doc "Builds a JSON generator for potentially inexistent values."} @@ -94,9 +92,9 @@ (def: encode (|>> unit.out (:: ..int-codec encode))) (def: decode - (|>> (:: ..int-codec decode) (:: e.functor map unit.in)))) + (|>> (:: ..int-codec decode) (:: try.functor map unit.in)))) -(poly: #export codec\encode +(poly: encode (with-expansions [ (template [ ] [(do ! @@ -122,28 +120,28 @@ [date.Date date.codec] [day.Day day.codec] [month.Month month.codec])] - (do {! p.monad} + (do {! <>.monad} [*env* .env #let [@JSON\encode (: (-> Type Code) (function (_ type) (` (-> (~ (poly.to-code *env* type)) /.JSON))))] inputT .peek] - ($_ p.either + ($_ <>.either