tmail 1.2.3.1 → 1.2.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (158) hide show
  1. data/README +10 -0
  2. data/ext/tmailscanner/tmail/tmailscanner.c +39 -8
  3. data/lib/tmail.rb +1 -0
  4. data/lib/tmail/address.rb +6 -40
  5. data/lib/tmail/attachments.rb +41 -22
  6. data/lib/tmail/encode.rb +9 -0
  7. data/lib/tmail/header.rb +5 -3
  8. data/lib/tmail/interface.rb +40 -3
  9. data/lib/tmail/mail.rb +3 -3
  10. data/lib/tmail/mailbox.rb +3 -2
  11. data/lib/tmail/net.rb +3 -1
  12. data/lib/tmail/parser.rb +204 -620
  13. data/lib/tmail/parser.y +38 -3
  14. data/lib/tmail/quoting.rb +38 -1
  15. data/lib/tmail/utils.rb +28 -4
  16. data/lib/tmail/vendor/rchardet-1.3/COPYING +504 -0
  17. data/lib/tmail/vendor/rchardet-1.3/README +12 -0
  18. data/lib/tmail/vendor/rchardet-1.3/lib/rchardet.rb +67 -0
  19. data/lib/tmail/vendor/rchardet-1.3/lib/rchardet/big5freq.rb +927 -0
  20. data/lib/tmail/vendor/rchardet-1.3/lib/rchardet/big5prober.rb +42 -0
  21. data/lib/tmail/vendor/rchardet-1.3/lib/rchardet/chardistribution.rb +237 -0
  22. data/lib/tmail/vendor/rchardet-1.3/lib/rchardet/charsetgroupprober.rb +112 -0
  23. data/lib/tmail/vendor/rchardet-1.3/lib/rchardet/charsetprober.rb +75 -0
  24. data/lib/tmail/vendor/rchardet-1.3/lib/rchardet/codingstatemachine.rb +64 -0
  25. data/lib/tmail/vendor/rchardet-1.3/lib/rchardet/constants.rb +42 -0
  26. data/lib/tmail/vendor/rchardet-1.3/lib/rchardet/escprober.rb +90 -0
  27. data/lib/tmail/vendor/rchardet-1.3/lib/rchardet/escsm.rb +244 -0
  28. data/lib/tmail/vendor/rchardet-1.3/lib/rchardet/eucjpprober.rb +88 -0
  29. data/lib/tmail/vendor/rchardet-1.3/lib/rchardet/euckrfreq.rb +596 -0
  30. data/lib/tmail/vendor/rchardet-1.3/lib/rchardet/euckrprober.rb +42 -0
  31. data/lib/tmail/vendor/rchardet-1.3/lib/rchardet/euctwfreq.rb +430 -0
  32. data/lib/tmail/vendor/rchardet-1.3/lib/rchardet/euctwprober.rb +42 -0
  33. data/lib/tmail/vendor/rchardet-1.3/lib/rchardet/gb2312freq.rb +474 -0
  34. data/lib/tmail/vendor/rchardet-1.3/lib/rchardet/gb2312prober.rb +42 -0
  35. data/lib/tmail/vendor/rchardet-1.3/lib/rchardet/hebrewprober.rb +289 -0
  36. data/lib/tmail/vendor/rchardet-1.3/lib/rchardet/jisfreq.rb +570 -0
  37. data/lib/tmail/vendor/rchardet-1.3/lib/rchardet/jpcntx.rb +229 -0
  38. data/lib/tmail/vendor/rchardet-1.3/lib/rchardet/langbulgarianmodel.rb +229 -0
  39. data/lib/tmail/vendor/rchardet-1.3/lib/rchardet/langcyrillicmodel.rb +330 -0
  40. data/lib/tmail/vendor/rchardet-1.3/lib/rchardet/langgreekmodel.rb +227 -0
  41. data/lib/tmail/vendor/rchardet-1.3/lib/rchardet/langhebrewmodel.rb +202 -0
  42. data/lib/tmail/vendor/rchardet-1.3/lib/rchardet/langhungarianmodel.rb +226 -0
  43. data/lib/tmail/vendor/rchardet-1.3/lib/rchardet/langthaimodel.rb +201 -0
  44. data/lib/tmail/vendor/rchardet-1.3/lib/rchardet/latin1prober.rb +147 -0
  45. data/lib/tmail/vendor/rchardet-1.3/lib/rchardet/mbcharsetprober.rb +89 -0
  46. data/lib/tmail/vendor/rchardet-1.3/lib/rchardet/mbcsgroupprober.rb +47 -0
  47. data/lib/tmail/vendor/rchardet-1.3/lib/rchardet/mbcssm.rb +542 -0
  48. data/lib/tmail/vendor/rchardet-1.3/lib/rchardet/sbcharsetprober.rb +124 -0
  49. data/lib/tmail/vendor/rchardet-1.3/lib/rchardet/sbcsgroupprober.rb +58 -0
  50. data/lib/tmail/vendor/rchardet-1.3/lib/rchardet/sjisprober.rb +88 -0
  51. data/lib/tmail/vendor/rchardet-1.3/lib/rchardet/universaldetector.rb +166 -0
  52. data/lib/tmail/vendor/rchardet-1.3/lib/rchardet/utf8prober.rb +87 -0
  53. data/lib/tmail/version.rb +1 -1
  54. data/setup.rb +2 -2
  55. data/test/fixtures/apple_unquoted_content_type +44 -0
  56. data/test/fixtures/inline_attachment.txt +2095 -0
  57. data/test/fixtures/iso_8859_1_email_without_encoding_and_message_id.txt +16 -0
  58. data/test/fixtures/mailbox.zip +0 -0
  59. data/test/fixtures/marked_as_iso_8859_1_but_it_is_utf_8.txt +33 -0
  60. data/test/fixtures/marked_as_utf_8_but_it_is_iso_8859_1.txt +56 -0
  61. data/test/fixtures/raw_email_bad_time +62 -0
  62. data/test/fixtures/raw_email_double_at_in_header +14 -0
  63. data/test/fixtures/raw_email_only_attachment +17 -0
  64. data/test/fixtures/raw_email_string_in_date_field +17 -0
  65. data/test/fixtures/raw_email_trailing_dot +21 -0
  66. data/test/fixtures/raw_email_with_quoted_attachment_filename +60 -0
  67. data/test/fixtures/raw_email_with_wrong_splitted_multibyte_encoded_word_subject +15 -0
  68. data/test/fixtures/the_only_part_is_a_word_document.txt +425 -0
  69. data/test/fixtures/unquoted_filename_in_attachment +177 -0
  70. data/test/test_address.rb +114 -92
  71. data/test/test_attachments.rb +84 -1
  72. data/test/test_encode.rb +54 -0
  73. data/test/test_header.rb +60 -2
  74. data/test/test_mail.rb +22 -15
  75. data/test/test_mbox.rb +12 -3
  76. data/test/test_port.rb +13 -9
  77. data/test/test_quote.rb +9 -0
  78. data/tmail.gemspec +34 -0
  79. metadata +68 -167
  80. data/MANIFEST +0 -191
  81. data/log/BugTrackingLog.txt +0 -1231
  82. data/log/Changelog.txt +0 -534
  83. data/log/Fixme.txt +0 -6
  84. data/log/Testlog.txt +0 -2340
  85. data/log/Todo.txt +0 -30
  86. data/log/fixme.rdoc +0 -6
  87. data/meta/MANIFEST +0 -128
  88. data/meta/VERSION +0 -1
  89. data/meta/project.yaml +0 -30
  90. data/meta/unixname +0 -1
  91. data/sample/bench_base64.rb +0 -48
  92. data/sample/data/multipart +0 -23
  93. data/sample/data/normal +0 -29
  94. data/sample/data/sendtest +0 -5
  95. data/sample/data/simple +0 -14
  96. data/sample/data/test +0 -27
  97. data/sample/extract-attachements.rb +0 -33
  98. data/sample/from-check.rb +0 -26
  99. data/sample/multipart.rb +0 -26
  100. data/sample/parse-bench.rb +0 -68
  101. data/sample/parse-test.rb +0 -19
  102. data/sample/sendmail.rb +0 -94
  103. data/site/contributing/index.html +0 -183
  104. data/site/css/clean.css +0 -27
  105. data/site/css/layout.css +0 -31
  106. data/site/css/style.css +0 -60
  107. data/site/download/index.html +0 -61
  108. data/site/img/envelope.jpg +0 -0
  109. data/site/img/mailman.gif +0 -0
  110. data/site/img/stamp-sm.jpg +0 -0
  111. data/site/img/stamp.jpg +0 -0
  112. data/site/img/stampborder.jpg +0 -0
  113. data/site/img/tfire.jpg +0 -0
  114. data/site/img/tmail.png +0 -0
  115. data/site/index.html +0 -270
  116. data/site/js/jquery.js +0 -31
  117. data/site/log/Changelog.xsl +0 -33
  118. data/site/log/changelog.xml +0 -1677
  119. data/site/outdated/BUGS +0 -3
  120. data/site/outdated/DEPENDS +0 -1
  121. data/site/outdated/Incompatibilities +0 -89
  122. data/site/outdated/Incompatibilities.ja +0 -102
  123. data/site/outdated/NEWS +0 -9
  124. data/site/outdated/README.ja +0 -73
  125. data/site/outdated/doc.ja/address.html +0 -275
  126. data/site/outdated/doc.ja/basics.html +0 -405
  127. data/site/outdated/doc.ja/config.html +0 -49
  128. data/site/outdated/doc.ja/details.html +0 -146
  129. data/site/outdated/doc.ja/index.html +0 -39
  130. data/site/outdated/doc.ja/mail.html +0 -793
  131. data/site/outdated/doc.ja/mailbox.html +0 -265
  132. data/site/outdated/doc.ja/port.html +0 -95
  133. data/site/outdated/doc.ja/tmail.html +0 -58
  134. data/site/outdated/doc.ja/usage.html +0 -202
  135. data/site/outdated/rdd/address.rrd.m +0 -229
  136. data/site/outdated/rdd/basics.rd.m +0 -275
  137. data/site/outdated/rdd/config.rrd.m +0 -26
  138. data/site/outdated/rdd/details.rd.m +0 -117
  139. data/site/outdated/rdd/index.rhtml.m +0 -54
  140. data/site/outdated/rdd/mail.rrd.m +0 -701
  141. data/site/outdated/rdd/mailbox.rrd.m +0 -228
  142. data/site/outdated/rdd/port.rrd.m +0 -69
  143. data/site/outdated/rdd/tmail.rrd.m +0 -33
  144. data/site/outdated/rdd/usage.rd.m +0 -247
  145. data/site/quickstart/index.html +0 -69
  146. data/site/quickstart/quickstart.html +0 -52
  147. data/site/quickstart/usage.html +0 -193
  148. data/site/reference/address.html +0 -247
  149. data/site/reference/config.html +0 -30
  150. data/site/reference/index.html +0 -101
  151. data/site/reference/mail.html +0 -726
  152. data/site/reference/mailbox.html +0 -245
  153. data/site/reference/port.html +0 -75
  154. data/site/reference/tmail.html +0 -35
  155. data/work/script/make +0 -26
  156. data/work/script/rdoc +0 -39
  157. data/work/script/setup +0 -1616
  158. data/work/script/test +0 -30
@@ -1,30 +0,0 @@
1
- <h1><code>class <a name="TMail%3a%3aConfig">TMail::Config</a> </code></h1>
2
-
3
- <h2>Class Methods</h2>
4
-
5
- <dl>
6
- <dt><a name="TMail%3a%3aConfig-new"><code>new(strict)</code></a> -&gt; <code><a href="config.html#TMail%3a%3aConfig">TMail::Config</a></code></dt>
7
- <dd>
8
- <p>
9
- strict: true | false<br>
10
- </p>
11
-
12
- <p>
13
- create a TMail::Config object.
14
- set true to all strict_* attributes if STRICT is true.
15
- </p>
16
-
17
- </dd>
18
- </dl>
19
- <h2>Instance Methods</h2>
20
-
21
- <dl>
22
- <dt><a name="TMail%3a%3aConfig-strict_parse%3f"><code>strict_parse?</code></a></dt>
23
- <dd>
24
- <p>
25
- If this flag is true, TMail's parsers may raise
26
- TMail::SyntaxError. If not, it never raises SynaxError.
27
- </p>
28
- </dd>
29
- </dl>
30
-
@@ -1,101 +0,0 @@
1
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2
- <html lang="en">
3
- <head>
4
- <meta http-equiv="Content-Type" content="text/html; charset=utf8">
5
- <meta http-equiv="Content-Language" content="en">
6
-
7
- <link rel="stylesheet" href="../css/clean.css" type="text/css" media="screen, projection, print"/>
8
- <link rel="stylesheet" href="../css/layout.css" type="text/css" media="screen, projection, print"/>
9
- <link rel="stylesheet" href="../css/style.css" type="text/css" media="screen, projection, print"/>
10
-
11
- <script type="text/javascript" src="../js/jquery.js"></script>
12
-
13
- <script>
14
- $(document).ready(function(){
15
- $('#usage').load('usage.html');
16
- $('#mail').load('mail.html');
17
- $('#address').load('address.html');
18
- $('#mailbox').load('mailbox.html');
19
- $('#port').load('port.html');
20
- $('#config').load('config.html');
21
- $('#tmail').load('tmail.html');
22
- });
23
- </script>
24
-
25
- <link rel="icon" href="../img/tfire.jpg" type="image/x-icon"/>
26
-
27
- <title>TMail &mdash; A Ruby Email Handler</title>
28
-
29
- <style>
30
- .section { margin-top: 50px; }
31
- </style>
32
- </head>
33
- <body>
34
- <script src="http://www.google-analytics.com/urchin.js" type="text/javascript">
35
- </script>
36
- <script type="text/javascript">
37
- _uacct = "UA-2871747-1";
38
- urchinTracker();
39
- </script>
40
-
41
- <div class="container">
42
-
43
- <div class="logo">
44
- <img src="../img/stamp-sm.jpg"/>
45
- </div>
46
-
47
- <div class="title">
48
- <h1>TMail</h1>
49
- <h2>Ruby on Mail</h2>
50
- </div>
51
-
52
- <div class="menu">
53
- &nbsp;
54
- <a href="../index.html">Home</a> &nbsp;&nbsp;
55
- <a href="../quickstart/index.html">Quickstart</a> &nbsp;&nbsp;
56
- <a href="http://lindsaar.net/tmail/" onClick="javascript:urchinTracker('/outgoing/rubyforge.org/blog_page');">Blog</a> &nbsp;&nbsp;
57
- <a href="http://rubyforge.org/frs/?group_id=4512" onClick="javascript:urchinTracker('/outgoing/rubyforge.org/download_page');">Download</a> &nbsp;&nbsp;
58
- <a href="http://rubyforge.org/mailman/listinfo/tmail-talk">Mailing List</a> &nbsp;&nbsp;
59
- <a href="../reference/index.html">Reference</a> &nbsp;&nbsp;
60
- <a href="../rdoc/index.html">RDocs</a> &nbsp;&nbsp;
61
- <a href="http://rubyforge.org/projects/tmail/" onClick="javascript:urchinTracker('/outgoing/rubyforge.org/project_page');">Project</a> &nbsp;&nbsp;
62
- <a href="../contributing/index.html">Contributing</a>
63
- </div>
64
-
65
- <div class="main">
66
- <h1>TMail API Reference <span style="font-size: 11px;">v0.10</span></h1>
67
-
68
- <p>Note, this might be a bit confusing, why a reference and an RDoc? Well
69
- we haven't finished moving everything over to RDoc yet, so in the mean
70
- time, we thought we would leave this here. If you want to help out on
71
- getting the RDoc up to date, let me know on the
72
- <a href="http://rubyforge.org/mailman/listinfo/tmail-talk">TMail Talk Mailing
73
- List</a> - Mikel.
74
-
75
- <h1>Contents</h1>
76
- <ul>
77
- <li><a href="#mail" >Mail Message Class </a></li>
78
- <li><a href="#address">Mail Address Classes </a></li>
79
- <li><a href="#mailbox">Mailbox Classes </a></li>
80
- <li><a href="#port" >Port and Stream Classes </a></li>
81
- <li><a href="#config" >Config Class </a></li>
82
- <li><a href="#tmail" >TMail Module </a></li>
83
- </ul>
84
-
85
- <div id="mail" ></div>
86
- <div id="address"></div>
87
- <div id="mailbox"></div>
88
- <div id="port" ></div>
89
- <div id="config" ></div>
90
- <div id="tmail" ></div>
91
- </div>
92
-
93
- <div class="footer">
94
- Copyright (c) 2007 TMail Project &reg; All Rights Reserved
95
- </div>
96
-
97
- <!-- Google Analytics -->
98
- </div>
99
- </body>
100
- </html>
101
-
@@ -1,726 +0,0 @@
1
- <h1><code>class <a name="TMail%3a%3aMail">TMail::Mail</a> </code></h1>
2
-
3
- <h2>Class Methods</h2>
4
-
5
- <dl>
6
- <dt><a name="TMail%3a%3aMail-new"><code>new(port = TMail::StringPort.new, <var>config</var> = DEFAULT_CONFIG)</code></a> -&gt; <code><a href="mail.html#TMail%3a%3aMail">TMail::Mail</a></code></dt>
7
- <dd>
8
- <p>
9
- port: <a href="port.html#TMail%3a%3aPort">TMail::Port</a><br>
10
- config: <a href="config.html#TMail%3a%3aConfig">TMail::Config</a><br>
11
- </p>
12
-
13
- <p>
14
- creates a new <code>TMail::Mail</code> object from PORT.
15
- </p>
16
-
17
- </dd>
18
- <dt><a name="TMail%3a%3aMail-load"><code>load(filename)</code></a> -&gt; <code><a href="mail.html#TMail%3a%3aMail">TMail::Mail</a></code></dt>
19
- <dd>
20
- <p>
21
- filename: String<br>
22
- </p>
23
-
24
- <p>
25
- creates a new <code>TMail::Mail</code> object. FILENAME is the name of file
26
- which contains just one mail (e.g. MH mail file).
27
- </p>
28
-
29
- </dd>
30
- <dt><a name="TMail%3a%3aMail-parse"><code>parse(str)</code></a> -&gt; <code><a href="mail.html#TMail%3a%3aMail">TMail::Mail</a></code></dt>
31
- <dd>
32
- <p>
33
- str: String<br>
34
- </p>
35
-
36
- <p>
37
- parses STR and creates a new <code>TMail::Mail</code> object.
38
- </p>
39
-
40
- </dd>
41
- </dl>
42
- <h2>Instance Methods</h2>
43
-
44
- <dl>
45
- <dt><a name="TMail%3a%3aMail-port"><code>port</code></a> -&gt; <code><a href="port.html#TMail%3a%3aPort">TMail::Port</a></code></dt>
46
- <dd>
47
- <p>
48
- the source port of this mail.
49
- </p>
50
-
51
- </dd>
52
- <dt><a name="TMail%3a%3aMail-body_port"><code>body_port</code></a> -&gt; <code><a href="port.html#TMail%3a%3aPort">TMail::Port</a></code></dt>
53
- <dd>
54
- <p>
55
- the port to save body of this mail.
56
- </p>
57
-
58
- </dd>
59
- <dt><a name="TMail%3a%3aMail-each%20%7b%7cline%7c%20%2e%2e%2e%2e%20%7d"><code>each {|line| .... }</code></a></dt>
60
- <dd>
61
- <p>
62
- line: String<br>
63
- </p>
64
-
65
- <p>
66
- iterates for each lines of mail body.
67
- </p>
68
-
69
- </dd>
70
- <dt><a name="TMail%3a%3aMail-body"><code>body</code></a> -&gt; <code>String</code></dt>
71
- <dt><a name="TMail%3a%3aMail-preamble"><code>preamble</code></a> -&gt; <code>String</code></dt>
72
- <dd>
73
- <p>
74
- the mail body. If the mail is a MIME multipart mail,
75
- this attribute represents "preamble".
76
- </p>
77
-
78
- </dd>
79
- <dt><a name="TMail%3a%3aMail-parts"><code>parts</code></a> -&gt; <code>[<a href="mail.html#TMail%3a%3aMail">TMail::Mail</a>]</code></dt>
80
- <dd>
81
- <p>
82
- parts of this mail. (valid only if this mail is a MIME multipart mail)
83
- </p>
84
-
85
- </dd>
86
- <dt><a name="TMail%3a%3aMail-epilogue"><code>epilogue</code></a> -&gt; <code>String</code></dt>
87
- <dd>
88
- <p>
89
- If the mail was MIME multipart mail, this represent "epilogue" string.
90
- Else, empty string.
91
- </p>
92
-
93
- </dd>
94
- <dt><a name="TMail%3a%3aMail-multipart%3f"><code>multipart?</code></a></dt>
95
- <dd>
96
- <p>
97
- true if the message is a multi-part mail.
98
- </p>
99
-
100
- </dd>
101
- <dt><a name="TMail%3a%3aMail-encoded"><code>encoded(eol = "\n", <var>encoding</var> = 'j')</code></a> -&gt; <code>String</code></dt>
102
- <dd>
103
- <p>
104
- eol: String<br>
105
- encoding: String<br>
106
- </p>
107
-
108
- <p>
109
- converts the mail object to a MIME encoded string.
110
- </p>
111
-
112
- </dd>
113
- <dt><a name="TMail%3a%3aMail-decoded"><code>decoded(eol = "\n", <var>encoding</var> = 'e')</code></a> -&gt; <code>String</code></dt>
114
- <dt><a name="TMail%3a%3aMail-to_s"><code>to_s(eol = "\n", <var>encoding</var> = 'e')</code></a> -&gt; <code>String</code></dt>
115
- <dd>
116
- <p>
117
- eol: String<br>
118
- encoding: String<br>
119
- </p>
120
-
121
- <p>
122
- converts the mail object to a decoded string.
123
- </p>
124
-
125
- </dd>
126
- <dt><a name="TMail%3a%3aMail-inspect"><code>inspect</code></a> -&gt; <code>String</code></dt>
127
- <dd>
128
- <p>
129
- returns simple string representation like
130
- <code>"#&lt;TMail::Mail port=&lt;StringPort:str=...&gt;&gt;"</code>
131
- </p>
132
-
133
- </dd>
134
- <dt><a name="TMail%3a%3aMail-write_back"><code>write_back(eol = "\n", <var>encoding</var> = 'e')</code></a></dt>
135
- <dd>
136
- <p>
137
- eol: String<br>
138
- encoding: String<br>
139
- </p>
140
-
141
- <p>
142
- converts this mail into string and write back to <code>body_port</code>,
143
- setting line terminator to EOL.
144
- </p>
145
-
146
- </dd>
147
- </dl>
148
- <h3>Property Access Method</h3>
149
-
150
- <dl>
151
- <dt><a name="TMail%3a%3aMail-date"><code>date(default = nil)</code></a> -&gt; <code>Time</code></dt>
152
- <dt><a name="TMail%3a%3aMail-date%3d"><code>date=(datetime)</code></a></dt>
153
- <dd>
154
- <p>
155
- datetime: Time<br>
156
- default: Object<br>
157
- </p>
158
-
159
- <p>
160
- a Time object of Date: header field.
161
- </p>
162
-
163
- </dd>
164
- <dt><a name="TMail%3a%3aMail-strftime"><code>strftime(format, <var>default</var> = nil)</code></a> -&gt; <code>String</code></dt>
165
- <dd>
166
- <p>
167
- format: String<br>
168
- default: Object<br>
169
- </p>
170
-
171
- <p>
172
- is equals to <code>date.strftime(format)</code>.
173
- If date is not exist, this method does nothing and
174
- returns <var>default</var>.
175
- </p>
176
-
177
- </dd>
178
- <dt><a name="TMail%3a%3aMail-to"><code>to(default = nil)</code></a> -&gt; <code>[String]</code></dt>
179
- <dt><a name="TMail%3a%3aMail-to%3d"><code>to=(specs)</code></a></dt>
180
- <dd>
181
- <p>
182
- specs: String | [String]<br>
183
- default: Object<br>
184
- </p>
185
-
186
- <p>
187
- address specs for To: header field.
188
- </p>
189
-
190
- </dd>
191
- <dt><a name="TMail%3a%3aMail-to_addrs"><code>to_addrs(default = nil)</code></a> -&gt; <code>[<a href="address.html#TMail%3a%3aAddress">TMail::Address</a> | <a href="address.html#TMail%3a%3aAddressGroup">TMail::AddressGroup</a>]</code></dt>
192
- <dt><a name="TMail%3a%3aMail-to_addrs%3d"><code>to_addrs=(addrs)</code></a></dt>
193
- <dd>
194
- <p>
195
- addrs: <a href="address.html#TMail%3a%3aAddress">TMail::Address</a> | [<a href="address.html#TMail%3a%3aAddress">TMail::Address</a>]<br>
196
- default: Object<br>
197
- </p>
198
-
199
- <p>
200
- adresses which is represented in To: header field.
201
- </p>
202
-
203
- </dd>
204
- <dt><a name="TMail%3a%3aMail-cc"><code>cc(default = nil)</code></a> -&gt; <code>[String]</code></dt>
205
- <dt><a name="TMail%3a%3aMail-cc%3d"><code>cc=(specs)</code></a></dt>
206
- <dd>
207
- <p>
208
- specs: String | [String]<br>
209
- default: Object<br>
210
- </p>
211
-
212
- <p>
213
- address specs for Cc: header field.
214
- </p>
215
-
216
- </dd>
217
- <dt><a name="TMail%3a%3aMail-cc_addrs"><code>cc_addrs(default = nil)</code></a> -&gt; <code>[<a href="address.html#TMail%3a%3aAddress">TMail::Address</a>]</code></dt>
218
- <dt><a name="TMail%3a%3aMail-cc_addrs%3d"><code>cc_addrs=(addrs)</code></a></dt>
219
- <dd>
220
- <p>
221
- addrs: <a href="address.html#TMail%3a%3aAddress">TMail::Address</a> | [<a href="address.html#TMail%3a%3aAddress">TMail::Address</a>]<br>
222
- default: Object<br>
223
- </p>
224
-
225
- <p>
226
- addresses which is represented in Cc: header field.
227
- </p>
228
-
229
- </dd>
230
- <dt><a name="TMail%3a%3aMail-bcc"><code>bcc(default = nil)</code></a> -&gt; <code>[String]</code></dt>
231
- <dt><a name="TMail%3a%3aMail-bcc%3d"><code>bcc=(specs)</code></a></dt>
232
- <dd>
233
- <p>
234
- specs: String | [String]<br>
235
- default: Object<br>
236
- </p>
237
-
238
- <p>
239
- address specs for Bcc: header field.
240
- </p>
241
-
242
- </dd>
243
- <dt><a name="TMail%3a%3aMail-bcc_addrs"><code>bcc_addrs(default = nil)</code></a> -&gt; <code>[<a href="address.html#TMail%3a%3aAddress">TMail::Address</a>]</code></dt>
244
- <dt><a name="TMail%3a%3aMail-bcc_addrs%3d"><code>bcc_addrs=(addrs)</code></a></dt>
245
- <dd>
246
- <p>
247
- addrs: <a href="address.html#TMail%3a%3aAddress">TMail::Address</a> | [<a href="address.html#TMail%3a%3aAddress">TMail::Address</a>]<br>
248
- default: Object<br>
249
- </p>
250
-
251
- <p>
252
- adresses which is represented in Bcc: header field.
253
- </p>
254
-
255
- </dd>
256
- <dt><a name="TMail%3a%3aMail-from"><code>from(default = nil)</code></a> -&gt; <code>[String]</code></dt>
257
- <dt><a name="TMail%3a%3aMail-from%3d"><code>from=(specs)</code></a></dt>
258
- <dd>
259
- <p>
260
- specs: String | [String]<br>
261
- default: Object<br>
262
- </p>
263
-
264
- <p>
265
- address specs for From: header field.
266
- </p>
267
-
268
- </dd>
269
- <dt><a name="TMail%3a%3aMail-from_addrs"><code>from_addrs(default = nil)</code></a> -&gt; <code>[<a href="address.html#TMail%3a%3aAddress">TMail::Address</a>]</code></dt>
270
- <dt><a name="TMail%3a%3aMail-from_addrs%3d"><code>from_addrs=(addrs)</code></a></dt>
271
- <dd>
272
- <p>
273
- addrs: <a href="address.html#TMail%3a%3aAddress">TMail::Address</a> | [<a href="address.html#TMail%3a%3aAddress">TMail::Address</a>]<br>
274
- default: Object<br>
275
- </p>
276
-
277
- <p>
278
- adresses which is represented in From: header field.
279
- </p>
280
-
281
- </dd>
282
- <dt><a name="TMail%3a%3aMail-friendly_from"><code>friendly_from(default = nil)</code></a> -&gt; <code>String</code></dt>
283
- <dd>
284
- <p>
285
- default: Object<br>
286
- </p>
287
-
288
- <p>
289
- a "phrase" part or address spec of the first From: address.
290
- </p>
291
-
292
- </dd>
293
- <dt><a name="TMail%3a%3aMail-reply_to"><code>reply_to(default = nil)</code></a> -&gt; <code>[String]</code></dt>
294
- <dt><a name="TMail%3a%3aMail-reply_to%3d"><code>reply_to=(specs)</code></a></dt>
295
- <dd>
296
- <p>
297
- specs: String | [String]<br>
298
- default: Object<br>
299
- </p>
300
-
301
- <p>
302
- address specs of Reply-To: header field.
303
- </p>
304
-
305
- </dd>
306
- <dt><a name="TMail%3a%3aMail-reply_to_addrs"><code>reply_to_addrs(default = nil)</code></a> -&gt; <code>[<a href="address.html#TMail%3a%3aAddress">TMail::Address</a>]</code></dt>
307
- <dt><a name="TMail%3a%3aMail-reply_to_addrs%3d"><code>reply_to_addrs=(addrs)</code></a></dt>
308
- <dd>
309
- <p>
310
- addrs: <a href="address.html#TMail%3a%3aAddress">TMail::Address</a> | [<a href="address.html#TMail%3a%3aAddress">TMail::Address</a>]<br>
311
- default: Object<br>
312
- </p>
313
-
314
- <p>
315
- adresses which is represented in Reply-To: header field.
316
- </p>
317
-
318
- </dd>
319
- <dt><a name="TMail%3a%3aMail-sender"><code>sender(default = nil)</code></a> -&gt; <code>String</code></dt>
320
- <dt><a name="TMail%3a%3aMail-sender%3d"><code>sender=(spec)</code></a></dt>
321
- <dd>
322
- <p>
323
- spec: String<br>
324
- </p>
325
-
326
- <p>
327
- address spec for Sender: header field.
328
- </p>
329
-
330
- </dd>
331
- <dt><a name="TMail%3a%3aMail-sender_addr"><code>sender_addr(default = nil)</code></a> -&gt; <code><a href="address.html#TMail%3a%3aAddress">TMail::Address</a></code></dt>
332
- <dt><a name="TMail%3a%3aMail-sender_addr%3d"><code>sender_addr=(addr)</code></a></dt>
333
- <dd>
334
- <p>
335
- addr: <a href="address.html#TMail%3a%3aAddress">TMail::Address</a><br>
336
- </p>
337
-
338
- <p>
339
- an address which is represented in Sender: header field.
340
- </p>
341
-
342
- </dd>
343
- <dt><a name="TMail%3a%3aMail-subject"><code>subject(default = nil)</code></a> -&gt; <code>String</code></dt>
344
- <dt><a name="TMail%3a%3aMail-subject%3d"><code>subject=(sbj)</code></a></dt>
345
- <dd>
346
- <p>
347
- sbj: String<br>
348
- </p>
349
-
350
- <p>
351
- the subject of the message.
352
- </p>
353
-
354
- </dd>
355
- <dt><a name="TMail%3a%3aMail-message_id"><code>message_id(default = nil)</code></a> -&gt; <code>String</code></dt>
356
- <dt><a name="TMail%3a%3aMail-message_id%3d"><code>message_id=(id)</code></a></dt>
357
- <dd>
358
- <p>
359
- id: String<br>
360
- </p>
361
-
362
- <p>
363
- message ID string.
364
- </p>
365
-
366
- </dd>
367
- <dt><a name="TMail%3a%3aMail-in_reply_to"><code>in_reply_to(default = nil)</code></a> -&gt; <code>[String]</code></dt>
368
- <dt><a name="TMail%3a%3aMail-in_reply_to%3d"><code>in_reply_to=(ids)</code></a></dt>
369
- <dd>
370
- <p>
371
- ids: String | [String]<br>
372
- </p>
373
-
374
- <p>
375
- message IDs of replying mails.
376
- </p>
377
-
378
- </dd>
379
- <dt><a name="TMail%3a%3aMail-references"><code>references(default = nil)</code></a> -&gt; <code>[String]</code></dt>
380
- <dt><a name="TMail%3a%3aMail-references%3d"><code>references=(ids)</code></a></dt>
381
- <dd>
382
- <p>
383
- ids: String | [String]<br>
384
- </p>
385
-
386
- <p>
387
- message IDs of all referencing (replying) mails.
388
- </p>
389
-
390
- </dd>
391
- <dt><a name="TMail%3a%3aMail-mime_version"><code>mime_version(default = nil)</code></a> -&gt; <code>String</code></dt>
392
- <dt><a name="TMail%3a%3aMail-mime_version%3d"><code>mime_version=(ver)</code></a></dt>
393
- <dd>
394
- <p>
395
- ver: String<br>
396
- </p>
397
-
398
- <p>
399
- MIME version.
400
- If it does not exist, returns the DEFAULT.
401
- </p>
402
-
403
- </dd>
404
- <dt><a name="TMail%3a%3aMail-set_mime_version"><code>set_mime_version(major, <var>minor</var>)</code></a></dt>
405
- <dd>
406
- <p>
407
- major: Integer<br>
408
- minor: Integer<br>
409
- </p>
410
-
411
- <p>
412
- set MIME version from integers.
413
- </p>
414
-
415
- </dd>
416
- <dt><a name="TMail%3a%3aMail-content_type"><code>content_type(default = nil)</code></a> -&gt; <code>String</code></dt>
417
- <dd>
418
- <p>
419
- the content type of the mail message (e.g. "text/plain").
420
- If it does not exist, returns the DEFAULT.
421
- </p>
422
-
423
- </dd>
424
- <dt><a name="TMail%3a%3aMail-main_type"><code>main_type(default = nil)</code></a> -&gt; <code>String</code></dt>
425
- <dd>
426
- <p>
427
- the main content type of the mail message. (e.g. "text")
428
- If it does not exist, returns the DEFAULT.
429
- </p>
430
-
431
- </dd>
432
- <dt><a name="TMail%3a%3aMail-sub_type"><code>sub_type(default = nil)</code></a> -&gt; <code>String</code></dt>
433
- <dd>
434
- <p>
435
- the sub content type of the mail message. (e.g. "plain")
436
- If it does not exist, returns the DEFAULT.
437
- </p>
438
-
439
- </dd>
440
- <dt><a name="TMail%3a%3aMail-content_type%3d"><code>content_type=(ctype)</code></a></dt>
441
- <dd>
442
- <p>
443
- ctype: String<br>
444
- </p>
445
-
446
- <p>
447
- set content type to STR.
448
- </p>
449
-
450
- </dd>
451
- <dt><a name="TMail%3a%3aMail-set_content_type"><code>set_content_type(main, <var>sub</var>, <var>params</var> = nil)</code></a></dt>
452
- <dd>
453
- <p>
454
- main: String<br>
455
- sub: String<br>
456
- params: {String => String}<br>
457
- </p>
458
-
459
- <p>
460
- set Content-type: header as "main/sub; param=val; param=val; ...".
461
- </p>
462
-
463
- </dd>
464
- <dt><a name="TMail%3a%3aMail-type_param"><code>type_param(name, <var>default</var> = nil)</code></a> -&gt; <code>String</code></dt>
465
- <dd>
466
- <p>
467
- name: String<br>
468
- </p>
469
-
470
- <p>
471
- returns the value corresponding to the case-insensitive
472
- NAME of Content-Type parameter.
473
- If it does not exist, returns the <var>default</var>.
474
- </p>
475
- <pre>
476
- # example
477
- mail['Content-Type'] = 'text/plain; charset=iso-2022-jp'
478
- p mail.type_param('charset') # "iso-2022-jp"
479
- </pre>
480
-
481
- </dd>
482
- <dt><a name="TMail%3a%3aMail-multipart%3f"><code>multipart?</code></a> -&gt; <code>true | false</code></dt>
483
- <dd>
484
- <p>
485
- judge if this mail is MIME multi part mail,
486
- by inspecting Content-Type: header field.
487
- </p>
488
-
489
- </dd>
490
- <dt><a name="TMail%3a%3aMail-transfer_encoding"><code>transfer_encoding(default = nil)</code></a> -&gt; <code>String</code></dt>
491
- <dt><a name="TMail%3a%3aMail-transfer_encoding%3d"><code>transfer_encoding=(encoding)</code></a></dt>
492
- <dd>
493
- <p>
494
- encoding: String<br>
495
- </p>
496
- <p>
497
- Content-Transfer-Encoding. (e.g. "7bit" "Base64")
498
- </p>
499
-
500
- </dd>
501
- <dt><a name="TMail%3a%3aMail-disposition"><code>disposition(default = nil)</code></a> -&gt; <code>String</code></dt>
502
- <dt><a name="TMail%3a%3aMail-disposition%3d"><code>disposition=(pos)</code></a></dt>
503
- <dd>
504
- <p>
505
- pos: String<br>
506
- </p>
507
-
508
- <p>
509
- Content-Disposition main value (e.g. "attachment").
510
- If it does not exist, returns the DEFAULT.
511
- </p>
512
- <pre>
513
- # example
514
- mail['Content-Disposition'] = 'attachement; filename="test.rb"'
515
- p mail.disposition # "attachment"
516
- </pre>
517
-
518
- </dd>
519
- <dt><a name="TMail%3a%3aMail-set_content_disposition"><code>set_content_disposition(pos, <var>params</var> = nil)</code></a></dt>
520
- <dd>
521
- <p>
522
- pos: String<br>
523
- params: {String => String}<br>
524
- </p>
525
-
526
- <p>
527
- set content disposition.
528
- </p>
529
-
530
- </dd>
531
- <dt><a name="TMail%3a%3aMail-disposition_param"><code>disposition_param(key, <var>default</var> = nil)</code></a> -&gt; <code>String</code></dt>
532
- <dd>
533
- <p>
534
- key: String<br>
535
- </p>
536
-
537
- <p>
538
- returns a value corresponding to the Content-Disposition
539
- parameter NAME (e.g. filename).
540
- If it does not exist, returns the <var>default</var>.
541
- </p>
542
- <pre>
543
- # example
544
- mail.disposition_param('filename')
545
- </pre>
546
-
547
- </dd>
548
- <dt><a name="TMail%3a%3aMail-destinations"><code>destinations(default = nil)</code></a> -&gt; <code>[String]</code></dt>
549
- <dd>
550
- <p>
551
- all address specs which are contained in To:, Cc: and
552
- Bcc: header fields.
553
- </p>
554
-
555
- </dd>
556
- <dt><a name="TMail%3a%3aMail-reply_addresses"><code>reply_addresses(default = nil)</code></a> -&gt; <code>[<a href="address.html#TMail%3a%3aAddress">TMail::Address</a>]</code></dt>
557
- <dd>
558
- <p>
559
- addresses to we reply to.
560
- </p>
561
-
562
- </dd>
563
- <dt><a name="TMail%3a%3aMail-error_reply_addresses"><code>error_reply_addresses(default = nil)</code></a> -&gt; <code>[<a href="address.html#TMail%3a%3aAddress">TMail::Address</a>]</code></dt>
564
- <dd>
565
- <p>
566
- addresses to use when returning error message.
567
- </p>
568
-
569
- </dd>
570
- </dl>
571
- <h3>Direct Header Handling Methods</h3>
572
-
573
- <dl>
574
- <dt><a name="TMail%3a%3aMail-clear"><code>clear</code></a></dt>
575
- <dd>
576
- <p>
577
- clears all header.
578
- </p>
579
-
580
- </dd>
581
- <dt><a name="TMail%3a%3aMail-keys"><code>keys</code></a> -&gt; <code>[TMail::HeaderField]</code></dt>
582
- <dd>
583
- <p>
584
- returns an array of contained header names.
585
- </p>
586
-
587
- </dd>
588
- <dt><a name="TMail%3a%3aMail-%5b%5d"><code>[](name)</code></a> -&gt; <code>TMail::HeaderField</code></dt>
589
- <dd>
590
- <p>
591
- name: String<br>
592
- </p>
593
-
594
- <p>
595
- returns a header field object corresponding to the case-insensitive
596
- key NAME. e.g. mail["To"]
597
- </p>
598
-
599
- </dd>
600
- <dt><a name="TMail%3a%3aMail-%5b%5d%3d"><code>[]=(name, <var>field</var>)</code></a></dt>
601
- <dd>
602
- <p>
603
- name: String<br>
604
- field: TMail::HeaderField<br>
605
- </p>
606
-
607
- <p>
608
- set NAME header field to <var>field</var>.
609
- </p>
610
-
611
- </dd>
612
- <dt><a name="TMail%3a%3aMail-delete"><code>delete(name)</code></a></dt>
613
- <dd>
614
- <p>
615
- name: String<br>
616
- </p>
617
- <p>
618
- deletes header corresponding to case-insensitive key NAME.
619
- </p>
620
-
621
- </dd>
622
- <dt><a name="TMail%3a%3aMail-delete_if%20%7b%7cname%2c%20field%7c%20%2e%2e%2e%2e%20%7d"><code>delete_if {|name, <var>field</var>| .... }</code></a></dt>
623
- <dd>
624
- <p>
625
- name: String<br>
626
- field: TMail::HeaderField<br>
627
- </p>
628
-
629
- <p>
630
- evaluates block with a name of header and header field object,
631
- and delete the header if block returns true.
632
- </p>
633
-
634
- </dd>
635
- <dt><a name="TMail%3a%3aMail-each_header%20%7b%7cname%2c%20field%7c%20%2e%2e%2e%2e%20%7d"><code>each_header {|name, <var>field</var>| .... }</code></a></dt>
636
- <dt><a name="TMail%3a%3aMail-each_pair%20%7b%7cname%2c%20field%7c%20%2e%2e%2e%2e%20%7d"><code>each_pair {|name, <var>field</var>| .... }</code></a></dt>
637
- <dd>
638
- <p>
639
- name: String<br>
640
- field: TMail::HeaderField<br>
641
- </p>
642
-
643
- <p>
644
- iterates for each header name and its field object.
645
- </p>
646
-
647
- </dd>
648
- <dt><a name="TMail%3a%3aMail-each_header_name%20%7b%7cname%7c%20%2e%2e%2e%2e%20%7d"><code>each_header_name {|name| .... }</code></a></dt>
649
- <dt><a name="TMail%3a%3aMail-each_key%20%7b%7cname%7c%20%2e%2e%2e%2e%20%7d"><code>each_key {|name| .... }</code></a></dt>
650
- <dd>
651
- <p>
652
- name: String<br>
653
- </p>
654
-
655
- <p>
656
- iterates for each contained header names.
657
- </p>
658
-
659
- </dd>
660
- <dt><a name="TMail%3a%3aMail-each_field%20%7b%7cfield%7c%20%2e%2e%2e%2e%20%7d"><code>each_field {|field| .... }</code></a></dt>
661
- <dt><a name="TMail%3a%3aMail-each_value%20%7b%7cfield%7c%20%2e%2e%2e%2e%20%7d"><code>each_value {|field| .... }</code></a></dt>
662
- <dd>
663
- <p>
664
- field: TMail::HeaderField<br>
665
- </p>
666
-
667
- <p>
668
- iterates for each header field objects.
669
- </p>
670
-
671
- </dd>
672
- <dt><a name="TMail%3a%3aMail-orderd_each%20%7b%7cname%2c%20field%7c%20%2e%2e%2e%2e%20%7d"><code>orderd_each {|name, <var>field</var>| .... }</code></a></dt>
673
- <dd>
674
- <p>
675
- name: String<br>
676
- field: TMail::HeaderField<br>
677
- </p>
678
-
679
- <p>
680
- iterates for each header field objects, in canonical order.
681
- </p>
682
-
683
- </dd>
684
- <dt><a name="TMail%3a%3aMail-key%3f"><code>key?(name)</code></a></dt>
685
- <dd>
686
- <p>
687
- name: String<br>
688
- </p>
689
-
690
- <p>
691
- returns true if the mail has NAME header.
692
- </p>
693
-
694
- </dd>
695
- <dt><a name="TMail%3a%3aMail-value%3f"><code>value?(field)</code></a></dt>
696
- <dd>
697
- <p>
698
- field: TMail::HeaderField<br>
699
- </p>
700
-
701
- <p>
702
- returns true if the mail has FIELD header field object.
703
- </p>
704
-
705
- </dd>
706
- <dt><a name="TMail%3a%3aMail-values_at"><code>values_at(*names)</code></a> -&gt; <code>[TMail::HeaderField]</code></dt>
707
- <dt><a name="TMail%3a%3aMail-indexes"><code>indexes(*names)</code></a> -&gt; <code>[TMail::HeaderField]</code></dt>
708
- <dt><a name="TMail%3a%3aMail-indices"><code>indices(*names)</code></a> -&gt; <code>[TMail::HeaderField]</code></dt>
709
- <dd>
710
- <p>
711
- names: [String]<br>
712
- </p>
713
-
714
- <p>
715
- equals to <code>names.collect {|k| mail[k] }</code>.
716
- </p>
717
-
718
- </dd>
719
- <dt><a name="TMail%3a%3aMail-values"><code>values</code></a> -&gt; <code>[TMail::HeaderField]</code></dt>
720
- <dd>
721
- <p>
722
- returns an array of all header field object.
723
- </p>
724
- </dd>
725
- </dl>
726
-