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)