Function const_base::decoded_len

source ·
pub const fn decoded_len(encoded: &[u8], config: Config) -> usize
Expand description

Computes the length of the string obtained from decoding encoded with the encoding determined by config.

Example

Base 64

use const_base::{Config, decoded_len};

const BASE64: &[usize] = &[
    // this crate allows an arbitrary amount of trailing `=` in the decoded string.
    decoded_len(b"fooooo=======", Config::B64),
    decoded_len(b"foo=", Config::B64),
    decoded_len(b"fo==", Config::B64),
];
assert_eq!(BASE64, [4, 2, 1]);

Base 32

use const_base::{Config, decoded_len};

const BASE32: &[usize] = &[
    // this crate allows an arbitrary amount of trailing `=` in the decoded string.
    decoded_len(b"foooooo=======", Config::B32),
    decoded_len(b"foooo=", Config::B32),
    decoded_len(b"fooo=", Config::B32),
    decoded_len(b"fo==", Config::B32),
];
assert_eq!(BASE32, [4, 3, 2, 1]);

Hexadecimal

use const_base::{Config, decoded_len};

const BASE32: &[usize] = &[
    decoded_len(b"F000B1E5", Config::HEX),
    decoded_len(b"F000B1", Config::HEX),
    decoded_len(b"F00B", Config::HEX),
    decoded_len(b"F0", Config::HEX),
];
assert_eq!(BASE32, [4, 3, 2, 1]);