add std/result.nix:isResult
This commit is contained in:
parent
00bc247a55
commit
8f347b9ad3
1 changed files with 6 additions and 2 deletions
|
|
@ -10,8 +10,12 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
# Pattern Matching
|
# Pattern Matching
|
||||||
isOk = r: builtins.hasAttr "ok" r && r.ok;
|
isResult = r:
|
||||||
isErr = r: builtins.hasAttr "ok" r && !r.ok;
|
(builtins.length (builtins.attrNames r) == 2)
|
||||||
|
&& builtins.hasAttr "ok" r
|
||||||
|
&& (builtins.hasAttr "value" r || builtins.hasAttr "error" r);
|
||||||
|
isOk = r: isResult r && r.ok;
|
||||||
|
isErr = r: isResult r && !r.ok;
|
||||||
|
|
||||||
# Unwrap (Monadic Return Operation)
|
# Unwrap (Monadic Return Operation)
|
||||||
unwrap = f: r:
|
unwrap = f: r:
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue