aboutsummaryrefslogtreecommitdiff
path: root/stdlib/source/program/aedifex/dependency/status.lux
diff options
context:
space:
mode:
authorEduardo Julian2020-12-22 21:42:17 -0400
committerEduardo Julian2020-12-22 21:42:17 -0400
commitcad959345afb8bf0bd1e5eefe6c63f136833b3ce (patch)
tree698a0189c6d30109a5ef27d67ab61e037abb011e /stdlib/source/program/aedifex/dependency/status.lux
parent68b1dd82f23d6648ac3d9075a8f84b0174392945 (diff)
Properly naming unicode Block type.
Diffstat (limited to 'stdlib/source/program/aedifex/dependency/status.lux')
-rw-r--r--stdlib/source/program/aedifex/dependency/status.lux35
1 files changed, 35 insertions, 0 deletions
diff --git a/stdlib/source/program/aedifex/dependency/status.lux b/stdlib/source/program/aedifex/dependency/status.lux
new file mode 100644
index 000000000..fa62f643e
--- /dev/null
+++ b/stdlib/source/program/aedifex/dependency/status.lux
@@ -0,0 +1,35 @@
+(.module:
+ [lux #*
+ [abstract
+ [equivalence (#+ Equivalence)]]
+ [data
+ ["." sum]
+ ["." product]]]
+ ["." /// #_
+ ["#." hash (#+ Hash SHA-1 MD5)]])
+
+(type: #export Status
+ #Unverified
+ (#Partial (Either (Hash SHA-1)
+ (Hash MD5)))
+ (#Verified (Hash SHA-1) (Hash MD5)))
+
+(structure: any-equivalence
+ (Equivalence Any)
+
+ (def: (= _ _)
+ true))
+
+(def: #export equivalence
+ (Equivalence Status)
+ ($_ sum.equivalence
+ ..any-equivalence
+ ($_ sum.equivalence
+ ///hash.equivalence
+ ///hash.equivalence
+ )
+ ($_ product.equivalence
+ ///hash.equivalence
+ ///hash.equivalence
+ )
+ ))