summaryrefslogtreecommitdiffstats
path: root/headers/src/header_components/received_token.rs
diff options
context:
space:
mode:
Diffstat (limited to 'headers/src/header_components/received_token.rs')
-rw-r--r--headers/src/header_components/received_token.rs61
1 files changed, 29 insertions, 32 deletions
diff --git a/headers/src/header_components/received_token.rs b/headers/src/header_components/received_token.rs
index 5c9ff5a..46f6b64 100644
--- a/headers/src/header_components/received_token.rs
+++ b/headers/src/header_components/received_token.rs
@@ -1,39 +1,37 @@
use soft_ascii_string::SoftAsciiChar;
+use internals::encoder::{EncodableInHeader, EncodingWriter};
use internals::error::EncodingError;
-use internals::encoder::{EncodingWriter, EncodableInHeader};
-
-use super::word::{ Word, do_encode_word };
-use super::{ Email, Domain };
+use super::word::{do_encode_word, Word};
+use super::{Domain, Email};
#[derive(Debug, Clone, Hash, Eq, PartialEq)]
pub enum ReceivedToken {
- Word( Word ),
- Address( Email ),
- Domain( Domain )
+ Word(Word),
+ Address(Email),
+ Domain(Domain),
}
-impl EncodableInHeader for ReceivedToken {
-
+impl EncodableInHeader for ReceivedToken {
fn encode(&self, handle: &mut EncodingWriter) -> Result<(), EncodingError> {
use self::ReceivedToken::*;
match *self {
- Word( ref word ) => {
- do_encode_word( word, handle, None )?;
- },
- Address( ref addr ) => {
+ Word(ref word) => {
+ do_encode_word(word, handle, None)?;
+ }
+ Address(ref addr) => {
// we do not need to use <..> , but I think it's better and it is definitely
// not wrong
- handle.write_char( SoftAsciiChar::from_unchecked('<') )?;
- addr.encode( handle )?;
- handle.write_char( SoftAsciiChar::from_unchecked('>') )?;
- },
- Domain( ref domain ) => {
- domain.encode( handle )?;
+ handle.write_char(SoftAsciiChar::from_unchecked('<'))?;
+ addr.encode(handle)?;
+ handle.write_char(SoftAsciiChar::from_unchecked('>'))?;
+ }
+ Domain(ref domain) => {
+ domain.encode(handle)?;
}
}
- Ok( () )
+ Ok(())
}
fn boxed_clone(&self) -> Box<EncodableInHeader> {
@@ -43,12 +41,12 @@ impl EncodableInHeader for ReceivedToken {
#[cfg(test)]
mod test {
- use ::HeaderTryFrom;
- use internals::MailType;
- use internals::encoder::EncodingBuffer;
use super::*;
+ use internals::encoder::EncodingBuffer;
+ use internals::MailType;
+ use HeaderTryFrom;
- ec_test!{ a_domain, {
+ ec_test! { a_domain, {
Domain::try_from( "random.mailnot" )?
} => ascii => [
MarkFWS,
@@ -56,7 +54,7 @@ mod test {
MarkFWS
]}
- ec_test!{ a_address, {
+ ec_test! { a_address, {
let email = Email::try_from( "modnar@random.mailnot")?;
ReceivedToken::Address( email )
} => ascii => [
@@ -71,27 +69,26 @@ mod test {
Text ">"
]}
- ec_test!{ a_word, {
+ ec_test! { a_word, {
let word = Word::try_from( "simple" )?;
ReceivedToken::Word( word )
} => ascii => [
Text "simple"
]}
- ec_test!{ a_quoted_word, {
+ ec_test! { a_quoted_word, {
let word = Word::try_from( "sim ple" )?;
ReceivedToken::Word( word )
} => ascii => [
Text r#""sim ple""#
]}
-
#[test]
fn no_encoded_word() {
- let mut encoder = EncodingBuffer::new( MailType::Ascii );
+ let mut encoder = EncodingBuffer::new(MailType::Ascii);
let mut handle = encoder.writer();
- let input = ReceivedToken::Word( Word::try_from( "↓right" ).unwrap() );
- assert_err!(input.encode( &mut handle ));
+ let input = ReceivedToken::Word(Word::try_from("↓right").unwrap());
+ assert_err!(input.encode(&mut handle));
handle.undo_header();
}
-} \ No newline at end of file
+}