summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authortv <tv@krebsco.de>2023-02-03 18:10:50 +0100
committertv <tv@krebsco.de>2023-02-05 01:40:20 +0100
commitffb24500ef54ff15b87b497c4a9ae71e7c6f4ec4 (patch)
treec89e74fc610c42f60a754ab5f654f29c06f8e078 /lib
parent6372ea4f4f9fb8ccfe5ed9c2571b07895910498a (diff)
lib.types.lowerBoundedInt: init
Diffstat (limited to 'lib')
-rw-r--r--lib/types.nix10
1 files changed, 8 insertions, 2 deletions
diff --git a/lib/types.nix b/lib/types.nix
index cda3381..f7c4916 100644
--- a/lib/types.nix
+++ b/lib/types.nix
@@ -293,15 +293,21 @@ rec {
merge = mergeOneOption;
};
+ lowerBoundedInt = min: mkOptionType {
+ name = "lower bounded integer";
+ check = x: isInt x && min <= x;
+ merge = mergeOneOption;
+ };
+
positive = mkOptionType {
+ inherit (lowerBoundedInt 1) check;
name = "positive integer";
- check = x: isInt x && x > 0;
merge = mergeOneOption;
};
uint = mkOptionType {
+ inherit (lowerBoundedInt 0) check;
name = "unsigned integer";
- check = x: isInt x && x >= 0;
merge = mergeOneOption;
};