(.using
  [library
   [lux {"-" and}
    ["$" documentation {"+" documentation:}]
    [control
     ["<>" parser
      ["<[0]>" code]]]
    [data
     ["[0]" text {"+" \n}
      ["%" format {"+" format}]]]
    [macro
     ["[0]" template]]]]
  [\\library
   ["[0]" /]])

(documentation: /.Instant
  "Instant is defined as milli-seconds since the epoch.")

(documentation: /.span
  ""
  [(span from to)])

(documentation: /.after
  ""
  [(after duration instant)])

(documentation: /.relative
  ""
  [(relative instant)])

(documentation: /.absolute
  ""
  [(absolute offset)])

(documentation: /.epoch
  "The instant corresponding to 1970-01-01T00:00:00Z.")

(documentation: /.codec
  (format "Based on ISO 8601."
          \n "For example: 2017-01-15T21:14:51.827Z"))

(documentation: /.now
  "Yields the current instant, as measured from the operating-system's clock.")

(documentation: /.of_date_time
  ""
  [(of_date_time date time)])

(.def: .public documentation
  (.List $.Module)
  ($.module /._
            ""
            [..Instant
             ..span
             ..after
             ..relative
             ..absolute
             ..epoch
             ..codec
             ..now
             ..of_date_time
             ($.default /.of_millis)
             ($.default /.millis)
             ($.default /.equivalence)
             ($.default /.order)
             ($.default /.enum)
             ($.default /.date)
             ($.default /.time)
             ($.default /.day_of_week)]
            []))
