[PREVIOUS CHAPTER] [NEXT CHAPTER]
5 ヘッダのカスタマイズをする関数群


5.1	ヘッダフィールドの内容の強制

SYNOPSIS:
	&DEFINE_FIELD_FORCED('field', "field-contents");

@HdrFieldsOrder 内で定義されているフィールドに対し、フィールドの内容を
強制操作します。なお

	$Envelope{'fh:field:'} = "field-contents";

と同じです。
#obsolete ですがコマンドラインの --fh:field="field-contents" と同じ

例: X-Ml-Info: の内容を"書きたいこと"に設定する。
	&DEFINE_FIELD_FORCED('x-ml-info', "書きたいこと");
	&DEFINE_FIELD_FORCED('x-ml-info', "ML Information");

5.2	ヘッダフィールドを元メールのままにする

SYNOPSIS:
	&DEFINE_FIELD_ORIGINAL('field');

@HdrFieldsOrder 内で定義されているフィールドに対し元々の値(MLサーバへ
入ってきた時のヘッダの値)にしておきたいフィールドを指定します。これは

	$Envelope{'oh:field:'};

と同じです。
#obsoleteですが --oh:field  (コマンドライン)と同じ

例: To:, Cc:, Reply-To: を元の内容のままにする。

	&DEFINE_FIELD_ORIGINAL('to');
	&DEFINE_FIELD_ORIGINAL('cc');
	&DEFINE_FIELD_ORIGINAL('reply-to');

To: Cc: フィールドを元々の値のまま配送する。

5.3	ヘッダのフィールドを増やす or 減らす

&ADD_FIELD, &DELETE_FIELD という関数も用意しています。
例: X-Uja を付け加える。

	&ADD_FIELD('X-Uja');

Cc: フィールドを“つけない”なら

	&DELETE_FIELD('Cc');


ヘッダに現れる順番が重要な場合は @HdrFieldsOrder という配列を直接いじ
るしかありません。

例: 先頭に X-Some-Thing をつける

	unshift(@HdrFieldsOrder, 'X-Some-Thing');

5.4	特定のヘッダ・フィールドのコピー

@HdrFieldsOrder 内で定義されているフィールドに対し、

where the field is one of fields defined in @HdrFieldsOrder.

		&COPY_FIELD(field, new-field);
	Example:
		&COPY_FIELD('Sender', 'X-Sender');


[PREVIOUS CHAPTER] [NEXT CHAPTER]