lib: toHex -> toHexString & toBase -> toBaseDigits

This makes the type of these functions more apparent from the name.
wip/yesman
Bas van Dijk 4 years ago
parent e15815e885
commit 6e7822b8f3
  1. 2
      lib/default.nix
  2. 8
      lib/tests/misc.nix
  3. 20
      lib/trivial.nix
  4. 2
      nixos/lib/qemu-flags.nix

@ -67,7 +67,7 @@ let
inherit (trivial) id const pipe concat or and bitAnd bitOr bitXor
bitNot boolToString mergeAttrs flip mapNullable inNixShell min max
importJSON warn info showWarnings nixpkgsVersion version mod compare
splitByAndCompare functionArgs setFunctionArgs isFunction toHex toBase;
splitByAndCompare functionArgs setFunctionArgs isFunction toHexString toBaseDigits;
inherit (fixedPoints) fix fix' converge extends composeExtensions
makeExtensible makeExtensibleWithCustomName;
inherit (attrsets) attrByPath hasAttrByPath setAttrByPath

@ -102,13 +102,13 @@ runTests {
expected = 9;
};
testToHex = {
expr = toHex 250;
testToHexString = {
expr = toHexString 250;
expected = "FA";
};
testToBase = {
expr = toBase 2 6;
testToBaseDigits = {
expr = toBaseDigits 2 6;
expected = [ 1 1 0 ];
};

@ -336,13 +336,13 @@ rec {
/* Convert the given positive integer to a string of its hexadecimal
representation. For example:
toHex 0 => "0"
toHexString 0 => "0"
toHex 16 => "10"
toHexString 16 => "10"
toHex 250 => "FA"
toHexString 250 => "FA"
*/
toHex = i:
toHexString = i:
let
toHexDigit = d:
if d < 10
@ -357,18 +357,18 @@ rec {
"15" = "F";
}.${toString d};
in
lib.concatMapStrings toHexDigit (toBase 16 i);
lib.concatMapStrings toHexDigit (toBaseDigits 16 i);
/* `toBase base i` converts the positive integer i to a list of its
/* `toBaseDigits base i` converts the positive integer i to a list of its
digits in the given base. For example:
toBase 10 123 => [ 1 2 3 ]
toBaseDigits 10 123 => [ 1 2 3 ]
toBase 2 6 => [ 1 1 0 ]
toBaseDigits 2 6 => [ 1 1 0 ]
toBase 16 250 => [ 15 10 ]
toBaseDigits 16 250 => [ 15 10 ]
*/
toBase = base: i:
toBaseDigits = base: i:
let
go = i:
if i < base

@ -6,7 +6,7 @@ let
pkgs.lib.optionalString (n < 16) "0" +
(if n > 255
then throw "Can't have more than 255 nets or nodes!"
else pkgs.lib.toHex n);
else pkgs.lib.toHexString n);
in
rec {

Loading…
Cancel
Save