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

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

        ($.definition /.between)
        ($.definition /.inner?)
        ($.definition /.outer?)
        ($.definition /.singleton?)
        ($.definition /.within?)
        ($.definition /.starts_with?)
        ($.definition /.ends_with?)
        ($.definition /.precedes?)
        ($.definition /.succeeds?)
        ($.definition /.before?)
        ($.definition /.after?)
        ($.definition /.touches?)
        ($.definition /.starts?)
        ($.definition /.finishes?)
        ($.definition /.equivalence)
        ($.definition /.nested?)
        ($.definition /.overlaps?)

        ($.definition (/.Interval it)
          "A representation of top and bottom boundaries for an ordered type.")

        ($.definition /.singleton
          "An interval where both top and bottom are the same value."
          [(singleton enum elem)])

        ($.definition /.borders?
          "Where a value is at the border of an interval.")

        ($.definition /.union
          "An interval that spans both predecessors.")

        ($.definition /.intersection
          "An interval spanned by both predecessors.")

        ($.definition /.complement
          "The inverse of an interval.")

        ($.definition /.meets?
          "Whether an interval meets another one on its bottom/lower side.")
        ))
