pub fn encode<'a, T, W>(input: &T, wrap: W) -> StringExpand description
Encode arbitrary octets as base65536.
The wrap option allows wrapping the output every so many characters,
optionally with a supplied string using WrapOptions.
Unless called with ignore_garbage, decode and decode_buf will
fail on output generated with a wrap. This is to match behaviour with the
original implementation.
§Panics
Panics if set to wrap every 0 columns.
§Examples
Without word wrapping:
use base65536::encode;
assert_eq!("驨ꍬ啯𒁷ꍲᕤ", encode("hello world", None));With word wrapping:
use base65536::encode;
assert_eq!(base65536::encode(
"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed \
do eiusmod tempor incididunt ut labore et dolore magna \
aliqua. Ut enim ad minim veniam, quis nostrud exercitation \
ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis \
aute irure dolor in reprehenderit in voluptate velit esse \
cillum dolore eu fugiat nulla pariatur. Excepteur sint \
occaecat cupidatat non proident, sunt in culpa qui officia \
deserunt mollit anim id est laborum.", 80)
.lines().next()?.chars().count(), 80);With word wrapping using a custom line ending:
use base65536::{WrapOptions, encode};
assert_eq!(base65536::encode(
"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed \
do eiusmod tempor incididunt ut labore et dolore magna \
aliqua. Ut enim ad minim veniam, quis nostrud exercitation \
ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis \
aute irure dolor in reprehenderit in voluptate velit esse \
cillum dolore eu fugiat nulla pariatur. Excepteur sint \
occaecat cupidatat non proident, sunt in culpa qui officia \
deserunt mollit anim id est laborum.",
WrapOptions::WrapAtWith(80, "\r\n"))
.lines().next()?.chars().count(), 80);