aboutsummaryrefslogtreecommitdiff
path: root/stdlib/source/documentation/lux/math/modulus.lux
blob: dc44b99df99f1185e030ccf73fbfe2f755c23f8a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
(.using
  [library
   [lux {"-" private}
    ["$" documentation {"+" documentation:}]
    [data
     ["[0]" text {"+" \n}
      ["%" format {"+" format}]]]
    [macro
     ["[0]" template]]]]
  [\\library
   ["[0]" /]])

(documentation: (/.Modulus %)
  (format "A number used as a modulus in modular arithmetic."
          \n "It cannot be 0."))

(documentation: /.congruent?
  ""
  [(congruent? modulus reference subject)])

(documentation: /.literal
  ""
  ["Success!"
   (literal 123)]
  ["Failure!"
   (literal 0)])

(.def: .public documentation
  (.List $.Module)
  ($.module /._
            ""
            [..Modulus
             ..congruent?
             ..literal
             ($.default /.zero_cannot_be_a_modulus)
             ($.default /.modulus)
             ($.default /.divisor)
             ($.default /.=)]
            []))