email_address_validator 0.2.1

A simple email address parsing library
Documentation
# Email Address Validator

A email address validator is a tool that checks whether a given string is a valid email address according to the
standard email address format. This is useful for validating user input in applications that require email addresses,
such as registration forms or contact forms.

## Getting Started

```commandline
cargo add email_address_validator
```

## Working with this crate

```rust
use email_address_validator::{
    Domain, DomainValidationOptionsBuilder, EmailAddress, EmailParseError,
    ValidationOptionsBuilder
};

fn main() -> Result<(), EmailParseError> {
    let email = EmailAddress::try_parse(
        "Testing User <test.user@example.com>",
        &ValidationOptionsBuilder::new().build()
    )?;

    // Prints Parsed Email: Testing User <test.user@example.com>
    println!("Parsed Email: {}", email);

    // Prints Local Part: test.user
    println!("Local Part: {}", email.local_part());

    // Prints Domain Part: example.com
    println!("Domain Part: {}", email.domain());

    let domain = Domain::try_parse(
        "[1234:5678:9abc:def0:1234:5678:9abc:def0]",
        &DomainValidationOptionsBuilder::new().build()
    )?;

    // Prints Domain: [1234:5678:9abc:def0:1234:5678:9abc:def0]
    println!("Domain: {}", domain.address());

    // Prints Domain Type: IpAddress
    println!("Domain Type: {}", domain.domain_type());

    Ok(())
}
```