diff options
Diffstat (limited to '')
-rw-r--r-- | stdlib/source/program/aedifex/dependency/status.lux | 35 |
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 + ) + )) |