Base62Encoding

Namespace: SnowBank.Text · class

Helper type for using the Base62 encoding

Remarks

This encoding only uses alphanumeric characters, including lowercase and uppercase letters.

There are two versions. The regular version (a-Z, 0-9, A-Z) is the most commonly used, and the lexicographic version (0-9, A-Z, a-z) which guarantees the same ordering between the string literal, and the corresponding bytes.

Methods

DecodeUInt128

static UInt128 DecodeUInt128(ReadOnlySpan<char> value, Base62FormattingOptions options = 0)

Decodes a 128-bits unsigned integer from a previously encoded base62 string literal

DecodeUInt32

static uint DecodeUInt32(ReadOnlySpan<char> value, Base62FormattingOptions options = 0)

Decodes a 32-bits unsigned integer from a previously encoded base62 string literal

DecodeUInt64

static ulong DecodeUInt64(ReadOnlySpan<char> value, Base62FormattingOptions options = 0)

Decodes a 64-bits unsigned integer from a previously encoded base62 string literal

Encode

static string Encode(Guid value, Base62FormattingOptions options = 0)

Encodes a Guid> into a base62 representation

static string Encode(Uuid128 value, Base62FormattingOptions options = 0)

Encodes a Uuid128 into a base62 representation

static string Encode(Uuid80 value, Base62FormattingOptions options = 0)

Encodes a Uuid128 into a base62 representation

static string Encode(Uuid64 value, Base62FormattingOptions options = 0)

Encodes a Uuid128 into a base62 representation

static string Encode(uint value, Base62FormattingOptions options = 0)

static string Encode(ulong value, Base62FormattingOptions options = 0)

static string Encode(UInt128 value, Base62FormattingOptions options = 0)

static string Encode(ulong high, ulong low, Base62FormattingOptions options = 0)

Encode64

static string Encode64(ulong value, int bits, Base62FormattingOptions options)

EncodeSortable

static string EncodeSortable(uint value)

static string EncodeSortable(ulong value)

static string EncodeSortable(UInt128 value)

TryDecodeUInt128

static bool TryDecodeUInt128(ReadOnlySpan<char> value, out UInt128 decoded, Base62FormattingOptions options = 0)

Decodes a 128-bits unsigned integer from a previously encoded base62 string literal

TryDecodeUInt32

static bool TryDecodeUInt32(ReadOnlySpan<char> value, out uint decoded, Base62FormattingOptions options = 0)

Decodes a 32-bits unsigned integer from a previously encoded base62 string literal

TryDecodeUInt64

static bool TryDecodeUInt64(ReadOnlySpan<char> value, out ulong decoded, Base62FormattingOptions options = 0)

Decodes a 64-bits unsigned integer from a previously encoded base62 string literal

TryEncodeTo

static bool TryEncodeTo(Span<char> destination, out int charsWritten, UInt128 value, Base62FormattingOptions options = 0)