diff options
author | adisbladis <adisbladis@gmail.com> | 2023-12-11 16:42:13 +1300 |
---|---|---|
committer | adisbladis <adisbladis@gmail.com> | 2023-12-11 16:42:13 +1300 |
commit | a128a3f234afb3d0a1d67b8b36e93cc629d0186d (patch) | |
tree | b420154d76bf784af04e7aa1b4e9e9e6aa92cd8b /lib | |
parent | eec92ca9df6ac423377275170caf58878076f798 (diff) | |
download | nixlib-a128a3f234afb3d0a1d67b8b36e93cc629d0186d.tar nixlib-a128a3f234afb3d0a1d67b8b36e93cc629d0186d.tar.gz nixlib-a128a3f234afb3d0a1d67b8b36e93cc629d0186d.tar.bz2 nixlib-a128a3f234afb3d0a1d67b8b36e93cc629d0186d.tar.lz nixlib-a128a3f234afb3d0a1d67b8b36e93cc629d0186d.tar.xz nixlib-a128a3f234afb3d0a1d67b8b36e93cc629d0186d.tar.zst nixlib-a128a3f234afb3d0a1d67b8b36e93cc629d0186d.zip |
lib.isConvertibleToString: Statically compute types list
Diffstat (limited to 'lib')
-rw-r--r-- | lib/strings.nix | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/lib/strings.nix b/lib/strings.nix index 3403f9f32bb6..0e357daf8d9b 100644 --- a/lib/strings.nix +++ b/lib/strings.nix @@ -977,9 +977,11 @@ rec { Many types of value are coercible to string this way, including int, float, null, bool, list of similarly coercible values. */ - isConvertibleWithToString = x: + isConvertibleWithToString = let + types = [ "null" "int" "float" "bool" ]; + in x: isStringLike x || - elem (typeOf x) [ "null" "int" "float" "bool" ] || + elem (typeOf x) types || (isList x && lib.all isConvertibleWithToString x); /* Check whether a value can be coerced to a string. |