VMime
address Class Referenceabstract
Inheritance diagram for address:
Collaboration diagram for address:

Public Member Functions

virtual bool isEmpty () const =0
 
virtual bool isGroup () const =0
 
virtual shared_ptr< componentclone () const =0
 
- Public Member Functions inherited from headerFieldValue
size_t getGeneratedSize (const generationContext &ctx)
 
- Public Member Functions inherited from component
 component ()
 
virtual ~component ()
 
void parse (const string &buffer)
 
void parse (const parsingContext &ctx, const string &buffer)
 
void parse (shared_ptr< utility::inputStream > inputStream, const size_t length)
 
void parse (const string &buffer, const size_t position, const size_t end, size_t *newPosition=NULL)
 
void parse (const parsingContext &ctx, const string &buffer, const size_t position, const size_t end, size_t *newPosition=NULL)
 
void parse (shared_ptr< utility::inputStream > inputStream, const size_t position, const size_t end, size_t *newPosition=NULL)
 
void parse (const parsingContext &ctx, shared_ptr< utility::inputStream > inputStream, const size_t position, const size_t end, size_t *newPosition=NULL)
 
virtual const string generate (const size_t maxLineLength=lineLengthLimits::infinite, const size_t curLinePos=0) const
 
virtual void generate (utility::outputStream &outputStream, const size_t curLinePos=0, size_t *newLinePos=NULL) const
 
virtual void generate (const generationContext &ctx, utility::outputStream &outputStream, const size_t curLinePos=0, size_t *newLinePos=NULL) const
 
virtual void copyFrom (const component &other)=0
 
size_t getParsedOffset () const
 
size_t getParsedLength () const
 
virtual const std::vector
< shared_ptr< component > > 
getChildComponents ()=0
 

Static Public Member Functions

static shared_ptr< addressparseNext (const parsingContext &ctx, const string &buffer, const size_t position, const size_t end, size_t *newPosition, bool *isLastAddressOfGroup)
 

Protected Member Functions

 address ()
 
- Protected Member Functions inherited from component
void setParsedBounds (const size_t start, const size_t end)
 
virtual void parseImpl (const parsingContext &ctx, shared_ptr< utility::parserInputStreamAdapter > parser, const size_t position, const size_t end, size_t *newPosition=NULL)
 
virtual void parseImpl (const parsingContext &ctx, const string &buffer, const size_t position, const size_t end, size_t *newPosition=NULL)
 
virtual void generateImpl (const generationContext &ctx, utility::outputStream &os, const size_t curLinePos=0, size_t *newLinePos=NULL) const =0
 
- Protected Member Functions inherited from object
 object ()
 
 object (const object &)
 
objectoperator= (const object &)
 
virtual ~object ()
 

Detailed Description

Abstract class representing a mailbox or a group of mailboxes.

This class define a common behaviour for the mailbox and mailboxGroup classes.

Constructor & Destructor Documentation

address ( )
protected

Member Function Documentation

virtual shared_ptr<component> clone ( ) const
pure virtual

Clone this component.

Returns
a copy of this component

Implements component.

Implemented in mailbox, and mailboxGroup.

virtual bool isEmpty ( ) const
pure virtual

Check whether this address is empty (no mailboxes specified if this is a mailboxGroup -or- no email specified if this is a mailbox).

Returns
true if this address is empty

Implemented in mailboxGroup, and mailbox.

virtual bool isGroup ( ) const
pure virtual

Test whether this is object is a mailboxGroup.

Returns
true if this is a mailboxGroup, false otherwise

Implemented in mailboxGroup, and mailbox.

shared_ptr< address > parseNext ( const parsingContext ctx,
const string buffer,
const size_t  position,
const size_t  end,
size_t newPosition,
bool *  isLastAddressOfGroup 
)
static

Parse an address from an input buffer.

Parameters
ctxparsing context
bufferinput buffer
positionposition in the input buffer
endend position in the input buffer
newPositionwill receive the new position in the input buffer
isLastAddressOfGroupwill be set to true if this is the last address of a group (end delimiter was found), or false otherwise (may be set to NULL)
Returns
a new address object, or null if no more address is available in the input buffer

References vmime::end(), and parserHelpers::isSpace().

Referenced by mailboxList::parseImpl(), addressList::parseImpl(), and mailboxGroup::parseImpl().


The documentation for this class was generated from the following files: