definition: |
isDisjunctionCompatible :: Version -> Disjunction -> Bool isDisjunctionCompatible ver cs = any id (map (all id) rs) where rs = map (map isCompatible) cs preReleaseCompatible (_, _, _, p1) (_, _, _, p2) = (isJust p1 && isJust p2) || (isNothing p1 && isNothing p2) isCompatible (VExact v) = v == ver isCompatible (VLt v) = ver `vlt` v && preReleaseCompatible ver v isCompatible (VLte v) = ver `vlte` v && preReleaseCompatible ver v isCompatible (VGt v) = ver `vgt` v && preReleaseCompatible ver v isCompatible (VGte v) = ver `vgte` v && preReleaseCompatible ver v isCompatible (VMinCompatible v) = ver `vgte` v && ver `vlt` (nextMinor v) && preReleaseCompatible ver v isCompatible (VMajCompatible v) = ver `vgte` v && ver `vlt` (nextMajor v) && preReleaseCompatible ver v |
demand: |
no demanded arguments |
deterministic: |
deterministic operation |
failfree: |
<FAILING> |
indeterministic: |
referentially transparent operation |
infix: |
no fixity defined |
iotype: |
{(_,_) |-> _} |
name: |
isDisjunctionCompatible |
precedence: |
no precedence defined |
result-values: |
_ |
signature: |
(Prelude.Int, Prelude.Int, Prelude.Int, Prelude.Maybe String) -> [[CPM.Package.VersionConstraint]] -> Prelude.Bool |
solution-complete: |
operation might suspend on free variables |
terminating: |
possibly non-terminating |
totally-defined: |
possibly non-reducible on same data term |