From ee94c1a159e044a8cd9edd15e18cf1032818eec1 Mon Sep 17 00:00:00 2001 From: Charles Iliya Krempeaux Date: Sun, 25 Aug 2024 05:47:26 -0700 Subject: [PATCH] pct-encoded --- default.go | 5 +++++ t_pctencoded.go | 17 +++++++++++++++++ 2 files changed, 22 insertions(+) create mode 100644 t_pctencoded.go diff --git a/default.go b/default.go index 9dd8493..c196ce8 100644 --- a/default.go +++ b/default.go @@ -36,6 +36,11 @@ func Password() string { return Default.Password() } +// Password returns an arbitrary pct-encoded. +func PctEncoded() string { + return Default.PctEncoded() +} + // PhoneNumber returns an arbitrary phone‐number. // // Some example phone‐number include: diff --git a/t_pctencoded.go b/t_pctencoded.go new file mode 100644 index 0000000..52d14e9 --- /dev/null +++ b/t_pctencoded.go @@ -0,0 +1,17 @@ +package arbitrary + +var hexdigs []byte = []byte{'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'} + +// PctEncoded returns an arbitrary pct-encoded. +func (arb T) PctEncoded() string { + var buffer [3]byte + + buffer[0] = '%' + + var length int = len(hexdigs) + + buffer[1] = hexdigs[arb.randomness.Intn(length)] + buffer[2] = hexdigs[arb.randomness.Intn(length)] + + return string(buffer[:]) +}