File: C:/Ruby27-x64/lib/ruby/gems/2.7.0/doc/net-imap-0.3.4/ri/Net/IMAP/FetchData/cdesc-FetchData.ri
U:RDoc::NormalClass[iI"FetchData:ETI"Net::IMAP::FetchData;TI"Struct.new(:seqno, :attr);To:RDoc::Markup::Document:@parts[o;;[o:RDoc::Markup::Paragraph;[I"FNet::IMAP::FetchData represents the contents of a FETCH response.;To:RDoc::Markup::BlankLine o; ;[I"ENet::IMAP#fetch and Net::IMAP#uid_fetch both return an array of ;TI"FetchData objects.;T@S:RDoc::Markup::Heading:
leveli: textI"Fetch attributes;T@o; ;[I"MEach key of the #attr hash is the data item name for the fetched value. ;TI"GEach data item represents a message attribute, part of one, or an ;TI"Ninterpretation of one. #seqno is not a message attribute. Most message ;TI"Jattributes are static and must never change for a given <tt>[server, ;TI"Oaccount, mailbox, UIDVALIDITY, UID]</tt> tuple. A few message attributes ;TI"7can be dynamically changed, e.g. using the {STORE ;TI"(command}[rdoc-ref:Net::IMAP#store].;T@o; ;[ I"ZSee {[IMAP4rev1] §7.4.2}[https://www.rfc-editor.org/rfc/rfc3501.html#section-7.4.2] ;TI"Zand {[IMAP4rev2] §7.5.2}[https://www.rfc-editor.org/rfc/rfc9051.html#section-7.5.2] ;TI"Ifor full description of the standard fetch response data items, and ;TI"KNet::IMAP@Message+envelope+and+body+structure for other relevant RFCs.;T@S;;i ;
I"Static fetch data items;T@o; ;[I"The static data items ;TI"Mdefined by [IMAP4rev1[https://www.rfc-editor.org/rfc/rfc3501.html]] are:;T@o:RDoc::Markup::List:
@type:
LABEL:@items[o:RDoc::Markup::ListItem:@label[I"<tt>"UID"</tt>;T;[o; ;[I">A number expressing the unique identifier of the message.;T@o;;[I"4<tt>"BODY[]"</tt>, <tt>"BODY[]<#{offset}>"</tt>;T;[o; ;[I"JThe [RFC5322[https://tools.ietf.org/html/rfc5322]] expression of the ;TI"!entire message, as a string.;T@o; ;[ I"JIf +offset+ is specified, this returned string is a substring of the ;TI"Fentire contents, starting at that origin octet. This means that ;TI"G<tt>BODY[]<0></tt> MAY be truncated, but <tt>BODY[]</tt> is NEVER ;TI"truncated.;T@o; ;[I":<em>Messages can be parsed using the "mail" gem.</em>;T@o;;;;[o;;[I" Note;T;[o; ;[I"FWhen fetching <tt>BODY.PEEK[#{specifier}]</tt>, the data will be ;TI"Kreturned in <tt>BODY[#{specifier}]</tt>, without the +PEEK+. This is ;TI"<true for all of the <tt>BODY[...]</tt> attribute forms.;T@o;;[I"@<tt>"BODY[HEADER]"</tt>, <tt>"BODY[HEADER]<#{offset}>"</tt>;T;[ o; ;[I"FThe [RFC5322[https://tools.ietf.org/html/rfc5322]] header of the ;TI"
message.;T@o; ;[I"A<em>Message headers can be parsed using the "mail" gem.</em>;T@o;;[I":<tt>"BODY[HEADER.FIELDS (#{fields.join(" ")})]"</tt>,;TI"D<tt>"BODY[HEADER.FIELDS (#{fields.join(" ")})]<#{offset}>"</tt>;T;[o; ;[I"LWhen field names are given, the subset contains only the header fields ;TI"Kthat matches one of the names in the list. The field names are based ;TI"5on what was requested, not on what was returned.;T@o;;[I"><tt>"BODY[HEADER.FIELDS.NOT (#{fields.join(" ")})]"</tt>,;TI"H<tt>"BODY[HEADER.FIELDS.NOT (#{fields.join(" ")})]<#{offset}>"</tt>;T;[o; ;[I"KWhen the <tt>HEADER.FIELDS.NOT</tt> is used, the subset is all of the ;TI"=fields that <em>do not</em> match any names in the list.;T@o;;[I"<<tt>"BODY[TEXT]"</tt>, <tt>"BODY[TEXT]<#{offset}>"</tt>;T;[o; ;[I",The text body of the message, omitting ;TI"?the [RFC5322[https://tools.ietf.org/html/rfc5322]] header.;T@o;;[I"B<tt>"BODY[#{part}]"</tt>, <tt>"BODY[#{part}]<#{offset}>"</tt>;T;[
o; ;[I">The text of a particular body section, if it was fetched.;T@o; ;[ I"IMultiple part specifiers will be joined with <tt>"."</tt>. Numeric ;TI"Jpart specifiers refer to the MIME part number, counting up from +1+. ;TI"KMessages that don't use MIME, or MIME messages that are not multipart ;TI"Band don't hold an encapsulated message, only have a part +1+.;T@o; ;[ I"(8-bit textual data is permitted if ;TI"La [CHARSET[https://tools.ietf.org/html/rfc2978]] identifier is part of ;TI"Bthe body parameter parenthesized list for this section. See ;TI"BodyTypeBasic.;T@o; ;[I"MMESSAGE/RFC822 or MESSAGE/GLOBAL message, or a subset of the header, if ;TI"it was fetched.;T@o;;[
I"%<tt>"BODY[#{part}.HEADER]"</tt>,;TI"0<tt>"BODY[#{part}.HEADER]<#{offset}>"</tt>,;TI"F<tt>"BODY[#{part}.HEADER.FIELDS.NOT (#{fields.join(" ")})]"</tt>,;TI"Q<tt>"BODY[#{part}.HEADER.FIELDS.NOT (#{fields.join(" ")})]<#{offset}>"</tt>,;TI"#<tt>"BODY[#{part}.TEXT]"</tt>,;TI".<tt>"BODY[#{part}.TEXT]<#{offset}>"</tt>,;TI"#<tt>"BODY[#{part}.MIME]"</tt>,;TI"-<tt>"BODY[#{part}.MIME]<#{offset}>"</tt>;T;[ o; ;[I"G+HEADER+, <tt>HEADER.FIELDS</tt>, <tt>HEADER.FIELDS.NOT</tt>, and ;TI"L<tt>TEXT</tt> can be prefixed by numeric part specifiers, if it refers ;TI"Jto a part of type <tt>message/rfc822</tt> or <tt>message/global</tt>.;T@o; ;[I"J+MIME+ refers to the [MIME-IMB[https://tools.ietf.org/html/rfc2045]] ;TI"header for this part.;T@o;;[I"<tt>"BODY"</tt>;T;[o; ;[I";A form of +BODYSTRUCTURE+, without any extension data.;T@o;;[I"<tt>"BODYSTRUCTURE"</tt>;T;[o; ;[I"3Returns a BodyStructure object that describes ;TI"Kthe [MIME-IMB[https://tools.ietf.org/html/rfc2045]] body structure of ;TI""a message, if it was fetched.;T@o;;[I"<tt>"ENVELOPE"</tt>;T;[o; ;[I"LAn Envelope object that describes the envelope structure of a message. ;TI"JSee the documentation for Envelope for a description of the envelope ;TI"structure attributes.;T@o;;[I"<tt>"INTERNALDATE"</tt>;T;[o; ;[ I"KThe internal date and time of the message on the server. This is not ;TI"the date and time in ;TI"Kthe [RFC5322[https://tools.ietf.org/html/rfc5322]] header, but rather ;TI"Ba date and time which reflects when the message was received.;T@o;;[I"<tt>"RFC822.SIZE"</tt>;T;[o; ;[I"LA number expressing the [RFC5322[https://tools.ietf.org/html/rfc5322]] ;TI"size of the message.;T@o;;;;[o;;[I" Note;T;[o; ;[I"H\IMAP was originally developed for the older RFC-822 standard, and ;TI"Has a consequence several fetch items in \IMAP incorporate "RFC822" ;TI"Iin their name. With the exception of +RFC822.SIZE+, there are more ;TI"=modern replacements; for example, the modern version of ;TI"C+RFC822.HEADER+ is <tt>BODY.PEEK[HEADER]</tt>. In all cases, ;TI":"RFC822" should be interpreted as a reference to the ;TI"Eupdated [RFC5322[https://tools.ietf.org/html/rfc5322]] standard.;T@o;;[I"<tt>"RFC822"</tt>;T;[o; ;[I"0Semantically equivalent to <tt>BODY[]</tt>.;To;;[I"<tt>"RFC822.HEADER"</tt>;T;[o; ;[I"6Semantically equivalent to <tt>BODY[HEADER]</tt>.;To;;[I"<tt>"RFC822.TEXT"</tt>;T;[o; ;[I"4Semantically equivalent to <tt>BODY[TEXT]</tt>.;T@o;;[I"
Note:;T;[o:RDoc::Markup::BlockQuote;[o; ;[I"BAdditional static fields are defined in \IMAP extensions and ;TI"C[IMAP4rev2[https://www.rfc-editor.org/rfc/rfc9051.html]], but ;TI"$Net::IMAP can't parse them yet.;T@S;;i ;
I"Dynamic message attributes;To; ;[I"#The only dynamic item defined ;TI"Fby [{IMAP4rev1}[https://www.rfc-editor.org/rfc/rfc3501.html]] is:;To;;;;[o;;[I"<tt>"FLAGS"</tt>;T;[o; ;[I"HAn array of flags that are set for this message. System flags are ;TI"Gsymbols that have been capitalized by String#capitalize. Keyword ;TI"5flags are strings and their case is not changed.;T@o; ;[I"6\IMAP extensions define new dynamic fields, e.g.:;T@o;;;;[o;;[I"<tt>"MODSEQ"</tt>;T;[ o; ;[I"HThe modification sequence number associated with this IMAP message.;T@o; ;[I"CRequires the [CONDSTORE[https://tools.ietf.org/html/rfc7162]] ;TI"8server {capability}[rdoc-ref:Net::IMAP#capability].;T@o;;[I"
Note:;T;[o;;[o; ;[I"DAdditional dynamic fields are defined in \IMAP extensions, but ;TI"$Net::IMAP can't parse them yet.;T:
@fileI""lib/net/imap/response_data.rb;T:0@omit_headings_from_table_of_contents_below0;0;0[ [ [ [[I"
class;T[[:public[ [:protected[ [:private[ [I"
instance;T[[;[[I" attr;TI""lib/net/imap/response_data.rb;T[I"
seqno;T@8[;[ [;[ [ [U:RDoc::Context::Section[i 0o;;[ ;0;0[@#I"Net::IMAP;TcRDoc::NormalClass