14 lines
378 B
Text
14 lines
378 B
Text
{-|
|
|
Returns `1` if the `Optional` value is present and `0` if the value is absent
|
|
-}
|
|
let length
|
|
: ∀(a : Type) → Optional a → Natural
|
|
= λ(a : Type) →
|
|
λ(xs : Optional a) →
|
|
merge { Some = λ(_ : a) → 1, None = 0 } xs
|
|
|
|
let example0 = assert : length Natural (Some 2) ≡ 1
|
|
|
|
let example1 = assert : length Natural (None Natural) ≡ 0
|
|
|
|
in length
|