Function base65536::encode
[−]
[src]
pub fn encode<'a, T: ?Sized, W>(input: &T, wrap: W) -> String where
T: AsRef<[u8]>,
W: Into<WrapOptions<'a>>,
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);