domain.value_objects.email¶
src.domain.value_objects.email
¶
Email value object with validation.
Immutable value object that validates email format.
Classes¶
Email
dataclass
¶
Email value object with format validation.
Immutable value object that ensures email addresses are valid. Uses email-validator library for RFC-compliant validation.
Attributes:
| Name | Type | Description |
|---|---|---|
value |
str
|
The email address string (validated, lowercase) |
Raises:
| Type | Description |
|---|---|
ValueError
|
If email format is invalid |
Example
email = Email("user@example.com") str(email) 'user@example.com' Email("invalid") Traceback (most recent call last): ... ValueError: Invalid email: ...
Source code in src/domain/value_objects/email.py
Functions¶
__post_init__
¶
Validate email format after initialization.
Uses email-validator library for comprehensive validation. Converts email to lowercase for case-insensitive comparison.
Raises:
| Type | Description |
|---|---|
ValueError
|
If email format is invalid. |
Source code in src/domain/value_objects/email.py
__str__
¶
__repr__
¶
Return repr for debugging.
Returns:
| Name | Type | Description |
|---|---|---|
str |
str
|
String representation of Email object. |