tvl-depot/nix/netstring/fromString.nix
Profpatsch 7e888c3c7b feat(nix): add basic netstring nix generation functions
Moving to toplevel so I can use them with `runExecline`. They should
be pretty atomic, and are proven to work (tests are still in my user
dir, since they test the producers indirectly via the python parser
and I don’t want to pull it out right now).

Change-Id: Id0baa3adcb2ec646458a104c7868c2889b8c64f5
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3054
Reviewed-by: Profpatsch <mail@profpatsch.de>
Tested-by: BuildkiteCI
2021-04-24 09:54:34 +00:00

10 lines
282 B
Nix

{ ... }:
# convert any nix string into a netstring
# (prefixed by its length) according to https://en.wikipedia.org/wiki/Netstring
#
# Examples:
# netstring.fromString "foo"
# => "3:foo,"
# netstring.fromString ""
# => "0:,"
s: "${toString (builtins.stringLength s)}:${s},"