DoxigAlpha

calcSize

Compute the encoded length

Function parameters

Parameters

#
encoder:*const Base64Encoder
source_len:usize

Base64 codecs

Types

#
Codecs
Base64 codecs

Error sets in this namespace

Error Sets

#

The Base64 alphabet defined in

Values

#
standard_alphabet_chars
The Base64 alphabet defined in
standard
Standard Base64 codecs, with padding, as defined in
standard_no_pad
Standard Base64 codecs, without padding, as defined in
url_safe_alphabet_chars
The URL-safe Base64 alphabet defined in
url_safe
URL-safe Base64 codecs, with padding, as defined in
url_safe_no_pad
URL-safe Base64 codecs, without padding, as defined in

Source

Implementation

#
pub fn calcSize(encoder: *const Base64Encoder, source_len: usize) usize {
    if (encoder.pad_char != null) {
        return @divTrunc(source_len + 2, 3) * 4;
    } else {
        const leftover = source_len % 3;
        return @divTrunc(source_len, 3) * 4 + @divTrunc(leftover * 4 + 2, 3);
    }
}