From af3e6e2cb011dc2ad9204440990731a2f272716d Mon Sep 17 00:00:00 2001 From: Eduardo Julian Date: Sat, 12 Jun 2021 01:32:40 -0400 Subject: Constraining the year of the snapshot time in Aedifex. --- stdlib/source/program/aedifex/artifact/time.lux | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) (limited to 'stdlib/source/program/aedifex/artifact/time.lux') diff --git a/stdlib/source/program/aedifex/artifact/time.lux b/stdlib/source/program/aedifex/artifact/time.lux index 19eb417a5..59367c37d 100644 --- a/stdlib/source/program/aedifex/artifact/time.lux +++ b/stdlib/source/program/aedifex/artifact/time.lux @@ -1,5 +1,6 @@ (.module: [lux #* + ["." time] [abstract [equivalence (#+ Equivalence)] [monad (#+ do)]] @@ -7,29 +8,33 @@ ["<>" parser ["<.>" text (#+ Parser)]]] [data + ["." product] [text - ["%" format (#+ Format)]]] - [time - ["." instant (#+ Instant)]]] + ["%" format (#+ Format)]]]] ["." / #_ ["#." date] ["#." time]]) (type: #export Time - Instant) + [/date.Date /time.Time]) + +(def: #export epoch + Time + [/date.epoch time.midnight]) (def: #export equivalence (Equivalence Time) - instant.equivalence) + (product.equivalence /date.equivalence + time.equivalence)) -(def: #export (format value) +(def: #export (format [date time]) (Format Time) - (%.format (/date.format (instant.date value)) - (/time.format (instant.time value)))) + (%.format (/date.format date) + (/time.format time))) (def: #export parser (Parser Time) (do <>.monad [date /date.parser time /time.parser] - (wrap (instant.from_date_time date time)))) + (wrap [date time]))) -- cgit v1.2.3