Function base64::encode_config_slice
[−]
[src]
pub fn encode_config_slice<T: ?Sized + AsRef<[u8]>>(
input: &T,
config: Config,
output: &mut [u8]
) -> usize
Encode arbitrary octets as base64. Writes into the supplied output buffer.
This is useful if you wish to avoid allocation entirely (e.g. encoding into a stack-resident or statically-allocated buffer).
Panics
If output
is too small to hold the encoded version of input
, a panic will result.
Example
extern crate base64; fn main() { let s = b"hello internet!"; let mut buf = Vec::new(); // make sure we'll have a slice big enough for base64 + padding buf.resize(s.len() * 4 / 3 + 4, 0); let bytes_written = base64::encode_config_slice(s, base64::STANDARD, &mut buf); // shorten our vec down to just what was written buf.resize(bytes_written, 0); assert_eq!(s, base64::decode(&buf).unwrap().as_slice()); }