##
12.8.1 MimeWriter オブジェクト

`MimeWriter` インスタンスには以下のメソッドがあります：

`addheader`( | key, value[, prefix])

  MIMEメッセージに新しいヘッダ行を追加します。key は、 そのヘッダの名前であり、そして valueで、そのヘッダの値を明示的に 与えます。省略可能な引数 prefixは、ヘッダが挿入される場所を決定します; "`0`" は最後に追加することを意味し、"`1`" は先頭への挿入です。 デフォールトは最後に追加することです。

`flushheaders`( | )

  今まで集められたヘッダすべてが書かれ(そして忘れられ)るようにします。 これは、もし全く本体が必要でない場合に役に立ちます。例えば、 ヘッダのような情報を保管するために(誤って)使用された、 型 message/rfc822 のサブパート用。

`startbody`( | ctype[, plist[, prefix]])

  メッセージの本体に書くのに使用できるファイルのようなオブジェクトを 返します。コンテント-型は、与えられた ctype に設定され、 省略可能なパラメータ plistは、コンテント-型定義のための 追加のパラメータを与えます。 prefix は、そのデフォールトが 先頭への挿入以外は `addheader()` でのように働きます。

`startmultipartbody`( | subtype[, boundary[, plist[, prefix]]])

  メッセージ本体を書くのに使うことができるファイルのようなオブジェクトを 返します。更に、このメソッドはマルチパートのコードを初期化します。ここで、 subtype が、そのマルチパートのサブタイプを、 boundary がユーザ定義の境界仕様を、そして plist が、そのサブタイプ用の省略可能なパラメータを定義します。 prefix は、`startbody()` でのように働きます。サブパートは、 `nextpart()`を使って作成するべきです。

`nextpart`( | )

  マルチパートメッセージの個々のパートを表す、 `MimeWriter`の 新しいインスタンスを返します。これは、そのパートを書くのにも、 また複雑なマルチパートを再帰的に作成するのにも使うことができます。 メッセージは、`nextpart()` を使う前に, 最初 `startmultipartbody()` で初期化しなければなりません。

`lastpart`( | )

  これは、マルチパートメッセージの最後のパートを指定するのに使うことが でき、マルチパートメッセージを書くときは いつでも使うべきです。