diff options
Diffstat (limited to '')
| -rw-r--r-- | stdlib/source/program/aedifex/command/build.lux | 38 |
1 files changed, 19 insertions, 19 deletions
diff --git a/stdlib/source/program/aedifex/command/build.lux b/stdlib/source/program/aedifex/command/build.lux index 98fa73d75..dfb566c11 100644 --- a/stdlib/source/program/aedifex/command/build.lux +++ b/stdlib/source/program/aedifex/command/build.lux @@ -140,30 +140,30 @@ (def: version_separator ".") -(implementation: version_order +(def: version_order (Order Version) + (implementation + (def: equivalence + text.equivalence) - (def: equivalence - text.equivalence) + (def: (< left right) + (loop (again [left (text.all_split_by ..version_separator left) + right (text.all_split_by ..version_separator right)]) + (case [left right] + [{.#Item leftH leftT} {.#Item rightH rightT}] + (if (text#= leftH rightH) + (again leftT rightT) + (or (n.< (text.size leftH) (text.size rightH)) + (text#< leftH rightH))) - (def: (< left right) - (loop (again [left (text.all_split_by ..version_separator left) - right (text.all_split_by ..version_separator right)]) - (case [left right] - [{.#Item leftH leftT} {.#Item rightH rightT}] - (if (text#= leftH rightH) - (again leftT rightT) - (or (n.< (text.size leftH) (text.size rightH)) - (text#< leftH rightH))) + [{.#Item leftH leftT} {.#End}] + false - [{.#Item leftH leftT} {.#End}] - false + [{.#End} {.#Item rightH rightT}] + true - [{.#End} {.#Item rightH rightT}] - true - - [{.#End} {.#End}] - false)))) + [{.#End} {.#End}] + false))))) (def: .public (host_dependencies fs home) (All (_ !) (-> (file.System !) Path Resolution (List Path))) |
