(.require
 [library
  [lux (.except)
   ["$" documentation]
   [data
    ["[0]" text (.only \n)
     ["%" \\format (.only format)]]]]]
 [\\library
  ["[0]" /]])

(def .public documentation
  (List $.Documentation)
  (list ($.module /._
                  "")

        ($.definition /.there_is_no_year_0)
        ($.definition /.value)
        ($.definition /.epoch)
        ($.definition /.leap)
        ($.definition /.century)
        ($.definition /.era)
        ($.definition /.leap?)
        ($.definition /.parser)
        ($.definition /.equivalence)
        ($.definition /.order)

        ($.definition /.Year
          (format "A year in the gregorian calendar."
                  \n "Both negative (< 0) and positive (> 0) values are valid, but not 0."
                  \n "This is because the first year of the gregorian calendar was year 1."))

        ($.definition /.year
          "A valid year in the gregorian calendar, if possible."
          [(year value)])

        ($.definition /.days
          "The amount of days in a typical year.")

        ($.definition /.Period
          "An amount of years.")

        ($.definition /.leaps
          "The number of leap years in a period of years."
          [(leaps year)])

        ($.definition /.codec
          (format "Based on ISO 8601."
                  \n "For example: 2017"))
        ))
