Merge pull request #204087 from ncfavier/splitString-simplify

Changed files
+4 -6
lib
+4 -6
lib/strings.nix
···
toUpper = replaceChars lowerChars upperChars;
/* Appends string context from another string. This is an implementation
-
detail of Nix.
+
detail of Nix and should be used carefully.
Strings in Nix carry an invisible `context` which is a list of strings
representing store paths. If the string is later used in a derivation
···
splitString "/" "/usr/local/bin"
=> [ "" "usr" "local" "bin" ]
*/
-
splitString = _sep: _s:
+
splitString = sep: s:
let
-
sep = builtins.unsafeDiscardStringContext _sep;
-
s = builtins.unsafeDiscardStringContext _s;
-
splits = builtins.filter builtins.isString (builtins.split (escapeRegex sep) s);
+
splits = builtins.filter builtins.isString (builtins.split (escapeRegex (toString sep)) (toString s));
in
-
map (v: addContextFrom _sep (addContextFrom _s v)) splits;
+
map (addContextFrom s) splits;
/* Return a string without the specified prefix, if the prefix matches.