Function decode

Source
pub fn decode<T: AsRef<[u8]>>(encoded_str: T) -> Result<String, Error>
Expand description

Decodes the given RFC 2047 MIME Message Header encoded string using a default decoder.

This function equals doing Decoder::new().decode.

ยงExample

use rfc2047_decoder::{decode, Decoder};

let encoded_message = "=?ISO-8859-1?Q?hello_there?=".as_bytes();
let decoded_message = "hello there";

// This ...
assert_eq!(decode(encoded_message).unwrap(), decoded_message);

// ... equals this:
assert_eq!(Decoder::new().decode(encoded_message).unwrap(), decoded_message);
Examples found in repository?
examples/decode.rs (line 9)
3fn main() {
4    let encoded_str = "=?UTF-8?Q?str?=";
5    let decoded_str = "str";
6
7    // using the decode helper (default options)
8    assert_eq!(
9        rfc2047_decoder::decode(encoded_str.as_bytes()).unwrap(),
10        decoded_str
11    );
12
13    // using the decoder builder (custom options)
14    assert_eq!(
15        rfc2047_decoder::Decoder::new()
16            .too_long_encoded_word_strategy(rfc2047_decoder::RecoverStrategy::Skip)
17            .decode(encoded_str.as_bytes())
18            .unwrap(),
19        decoded_str
20    );
21}