7 #ifndef _MIMETIC_MIMEENTITY_H_ 8 #define _MIMETIC_MIMEENTITY_H_ 15 #include <mimetic/strutils.h> 16 #include <mimetic/utils.h> 17 #include <mimetic/contenttype.h> 18 #include <mimetic/contenttransferencoding.h> 19 #include <mimetic/contentdisposition.h> 20 #include <mimetic/mimeversion.h> 21 #include <mimetic/mimeentitylist.h> 22 #include <mimetic/codec/codec.h> 23 #include <mimetic/os/file.h> 24 #include <mimetic/header.h> 25 #include <mimetic/body.h> 26 #include <mimetic/parser/itparserdecl.h> 27 #include <mimetic/streambufs.h> 40 friend class MimeEntityLoader;
41 typedef std::list<std::string> BoundaryList;
42 typedef unsigned long int size_type;
51 template<
typename Iterator>
52 MimeEntity(Iterator beg, Iterator end,
int mask = imNone);
63 template<
typename OutputIt>
64 size_type
copy(OutputIt out);
67 const Header& header()
const;
70 const Body& body()
const;
79 template<
typename Iterator>
80 void load(Iterator, Iterator,
int mask = imNone);
81 void load(std::istream&,
int mask = imNone);
86 bool hasField(
const std::string&)
const;
92 size_type
size()
const;
93 friend std::ostream& operator<<(std::ostream&,
const MimeEntity&);
97 virtual std::ostream& write(std::ostream&,
const char* eol = 0)
const;
112 template<
typename Iterator>
116 load(bit, eit, mask);
120 template<
typename Iterator>
124 typename std::iterator_traits<Iterator>::iterator_category> prs(*
this);
129 template<
typename OutputIt>
132 passthrough_streambuf<OutputIt> psb(out);
133 std::ostream os(&psb);
Represent a MIME entity.
Definition: mimeentity.h:37
size_type copy(OutputIt out)
Definition: mimeentity.h:130
MIME message body.
Definition: body.h:21
Parse the input reading from an iterator.
Definition: itparser.h:20
void load(Iterator, Iterator, int mask=imNone)
Definition: mimeentity.h:121
bool hasField(const std::string &) const