NAME

Mail::Make::Headers::MessageID - Typed Message-ID Header for Mail::Make

SYNOPSIS

use Mail::Make::Headers::MessageID;

# Auto-generated ID
my $mid = Mail::Make::Headers::MessageID->new;
print $mid->as_string;
# <3f2504e04f8911d39a0c030648acfd0c@mail.make.generated>

# Supplied ID
my $mid2 = Mail::Make::Headers::MessageID->new( '<abc@example.com>' );

VERSION

v0.2.0

DESCRIPTION

A typed object for the Message-ID header field. Validates that any supplied value is in angle-bracket format, and auto-generates a UUID-based ID when none is supplied.

CONSTRUCTOR

new( [$id_string] )

If $id_string is omitted, a unique ID is auto-generated. If supplied, it must be in <local-part@domain> format.

METHODS

as_string

Returns the Message-ID string.

generate

Generates a fresh unique ID and replaces the current one.

id( [$value] )

Gets or sets the ID. Validates the angle-bracket format.

value

Alias for as_string.

AUTHOR

Jacques Deguest <jack@deguest.jp>

SEE ALSO

RFC 2822 section 3.6.4

Mail::Make::Headers, Mail::Make

COPYRIGHT & LICENSE

Copyright(c) 2026 DEGUEST Pte. Ltd.

All rights reserved.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.