Export class and functions in shared libraries.

This commit is contained in:
Vincent Richard 2013-05-12 16:51:40 +02:00
parent 5fb81d3322
commit 69d552a87b
131 changed files with 226 additions and 205 deletions

1
.gitignore vendored
View File

@ -25,6 +25,7 @@ doc/html/*
/libvmime.a /libvmime.a
/vmime.pc /vmime.pc
/vmime/config.hpp /vmime/config.hpp
/vmime/export.hpp
/COPYING.txt /COPYING.txt
/build/ /build/

View File

@ -12,7 +12,7 @@
# http://www.cmake.org # http://www.cmake.org
# #
CMAKE_MINIMUM_REQUIRED(VERSION 2.8.3 FATAL_ERROR) CMAKE_MINIMUM_REQUIRED(VERSION 2.8.6 FATAL_ERROR)
INCLUDE(cmake/Utils.cmake) INCLUDE(cmake/Utils.cmake)
@ -79,6 +79,7 @@ FILE(
) )
LIST(APPEND VMIME_LIBRARY_INCLUDE_FILES "vmime/config.hpp") LIST(APPEND VMIME_LIBRARY_INCLUDE_FILES "vmime/config.hpp")
LIST(APPEND VMIME_LIBRARY_INCLUDE_FILES "vmime/export.hpp")
INCLUDE_DIRECTORIES( INCLUDE_DIRECTORIES(
${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}
@ -93,6 +94,10 @@ OPTION(
IF(VMIME_BUILD_SHARED_LIBRARY) IF(VMIME_BUILD_SHARED_LIBRARY)
INCLUDE(GenerateExportHeader)
ADD_COMPILER_EXPORT_FLAGS()
ADD_LIBRARY( ADD_LIBRARY(
${VMIME_LIBRARY_NAME} ${VMIME_LIBRARY_NAME}
SHARED SHARED
@ -100,6 +105,12 @@ IF(VMIME_BUILD_SHARED_LIBRARY)
${VMIME_LIBRARY_INCLUDE_FILES} ${VMIME_LIBRARY_INCLUDE_FILES}
) )
GENERATE_EXPORT_HEADER(
${VMIME_LIBRARY_NAME}
BASE_NAME VMIME
EXPORT_FILE_NAME vmime/export.hpp
)
SET_TARGET_PROPERTIES( SET_TARGET_PROPERTIES(
${VMIME_LIBRARY_NAME} ${VMIME_LIBRARY_NAME}
PROPERTIES PROPERTIES
@ -132,6 +143,7 @@ IF(VMIME_BUILD_STATIC_LIBRARY)
${VMIME_LIBRARY_NAME}-static ${VMIME_LIBRARY_NAME}-static
PROPERTIES PROPERTIES
OUTPUT_NAME ${VMIME_LIBRARY_NAME} OUTPUT_NAME ${VMIME_LIBRARY_NAME}
COMPILE_FLAGS -DVMIME_STATIC_DEFINE
) )
ENDIF() ENDIF()

View File

@ -6,6 +6,9 @@
#define VMIME_CONFIG_HPP_INCLUDED #define VMIME_CONFIG_HPP_INCLUDED
#include "vmime/export.hpp"
// Name of package // Name of package
#define VMIME_PACKAGE "@PROJECT_NAME@" #define VMIME_PACKAGE "@PROJECT_NAME@"

View File

@ -39,7 +39,7 @@ namespace vmime
* and mailboxGroup classes. * and mailboxGroup classes.
*/ */
class address : public headerFieldValue class VMIME_EXPORT address : public headerFieldValue
{ {
protected: protected:

View File

@ -41,7 +41,7 @@ class mailboxList;
/** A list of addresses. /** A list of addresses.
*/ */
class addressList : public headerFieldValue class VMIME_EXPORT addressList : public headerFieldValue
{ {
public: public:

View File

@ -41,7 +41,7 @@ namespace vmime
/** Base class for all types of attachment. /** Base class for all types of attachment.
*/ */
class attachment : public object class VMIME_EXPORT attachment : public object
{ {
friend class messageBuilder; friend class messageBuilder;
friend class messageParser; friend class messageParser;

View File

@ -37,7 +37,7 @@ namespace vmime
/** Retrieve attachment information from message parts. /** Retrieve attachment information from message parts.
*/ */
class attachmentHelper class VMIME_EXPORT attachmentHelper
{ {
public: public:

View File

@ -47,7 +47,7 @@ class bodyPart;
/** Body section of a MIME part. /** Body section of a MIME part.
*/ */
class body : public component class VMIME_EXPORT body : public component
{ {
friend class bodyPart; friend class bodyPart;

View File

@ -39,7 +39,7 @@ namespace vmime
/** A MIME part. /** A MIME part.
*/ */
class bodyPart : public component class VMIME_EXPORT bodyPart : public component
{ {
friend class body; friend class body;

View File

@ -40,7 +40,7 @@ namespace vmime
/** An attachment related to a local body part. /** An attachment related to a local body part.
*/ */
class bodyPartAttachment : public attachment class VMIME_EXPORT bodyPartAttachment : public attachment
{ {
friend class creator; friend class creator;

View File

@ -42,7 +42,7 @@ class encoding; // forward reference
/** Charset description (basic type). /** Charset description (basic type).
*/ */
class charset : public component class VMIME_EXPORT charset : public component
{ {
public: public:

View File

@ -48,7 +48,7 @@ namespace utility
* occured when initializing convert, or during charset conversion. * occured when initializing convert, or during charset conversion.
*/ */
class charsetFilteredOutputStream : public filteredOutputStream class VMIME_EXPORT charsetFilteredOutputStream : public filteredOutputStream
{ {
}; };
@ -59,7 +59,7 @@ class charsetFilteredOutputStream : public filteredOutputStream
/** Convert between charsets. /** Convert between charsets.
*/ */
class charsetConverter : public object class VMIME_EXPORT charsetConverter : public object
{ {
public: public:

View File

@ -35,7 +35,7 @@ namespace vmime
/** Options for charset conversion. /** Options for charset conversion.
*/ */
class charsetConverterOptions : public object class VMIME_EXPORT charsetConverterOptions : public object
{ {
public: public:

View File

@ -42,7 +42,7 @@ namespace vmime
* It defines methods for parsing and generating a component. * It defines methods for parsing and generating a component.
*/ */
class component : public object class VMIME_EXPORT component : public object
{ {
public: public:

View File

@ -36,7 +36,7 @@ namespace vmime
/** Content disposition (basic type). /** Content disposition (basic type).
*/ */
class contentDisposition : public headerFieldValue class VMIME_EXPORT contentDisposition : public headerFieldValue
{ {
public: public:

View File

@ -36,7 +36,7 @@ namespace vmime
{ {
class contentDispositionField : public parameterizedHeaderField class VMIME_EXPORT contentDispositionField : public parameterizedHeaderField
{ {
friend class vmime::creator; // create ref friend class vmime::creator; // create ref

View File

@ -38,7 +38,7 @@ namespace vmime
{ {
class contentHandler : public object class VMIME_EXPORT contentHandler : public object
{ {
public: public:

View File

@ -35,7 +35,7 @@ namespace vmime
{ {
class contentTypeField : public parameterizedHeaderField class VMIME_EXPORT contentTypeField : public parameterizedHeaderField
{ {
friend class vmime::creator; // create ref friend class vmime::creator; // create ref

View File

@ -36,7 +36,7 @@ namespace vmime
/** Holds configuration parameters used either for parsing or generating messages. /** Holds configuration parameters used either for parsing or generating messages.
*/ */
class context : public object class VMIME_EXPORT context : public object
{ {
public: public:

View File

@ -38,7 +38,7 @@ namespace vmime
/** Date and time (basic type). /** Date and time (basic type).
*/ */
class datetime : public headerFieldValue class VMIME_EXPORT datetime : public headerFieldValue
{ {
public: public:

View File

@ -36,7 +36,7 @@ namespace vmime
/** Default implementation for attachments. /** Default implementation for attachments.
*/ */
class defaultAttachment : public attachment class VMIME_EXPORT defaultAttachment : public attachment
{ {
protected: protected:

View File

@ -38,7 +38,7 @@ namespace vmime
/** Disposition - from RFC-3798 (basic type). /** Disposition - from RFC-3798 (basic type).
*/ */
class disposition : public headerFieldValue class VMIME_EXPORT disposition : public headerFieldValue
{ {
public: public:

View File

@ -36,7 +36,7 @@ namespace vmime
/** An email address: local name and domain name (basic type). /** An email address: local name and domain name (basic type).
*/ */
class emailAddress : public component class VMIME_EXPORT emailAddress : public component
{ {
public: public:

View File

@ -32,7 +32,7 @@ namespace vmime
{ {
class emptyContentHandler : public contentHandler class VMIME_EXPORT emptyContentHandler : public contentHandler
{ {
public: public:

View File

@ -41,7 +41,7 @@ class contentHandler;
/** Content encoding (basic type). /** Content encoding (basic type).
*/ */
class encoding : public headerFieldValue class VMIME_EXPORT encoding : public headerFieldValue
{ {
public: public:

View File

@ -39,7 +39,7 @@ namespace vmime
/** Base class for VMime exceptions. /** Base class for VMime exceptions.
*/ */
class exception : public std::exception class VMIME_EXPORT exception : public std::exception
{ {
private: private:
@ -98,7 +98,7 @@ namespace exceptions
{ {
class bad_field_value_type : public vmime::exception class VMIME_EXPORT bad_field_value_type : public vmime::exception
{ {
public: public:
@ -110,7 +110,7 @@ public:
}; };
class charset_conv_error : public vmime::exception class VMIME_EXPORT charset_conv_error : public vmime::exception
{ {
public: public:
@ -125,7 +125,7 @@ public:
/** No encoder has been found for the specified encoding name. /** No encoder has been found for the specified encoding name.
*/ */
class no_encoder_available : public vmime::exception class VMIME_EXPORT no_encoder_available : public vmime::exception
{ {
public: public:
@ -140,7 +140,7 @@ public:
/** No algorithm has been found for the specified name. /** No algorithm has been found for the specified name.
*/ */
class no_digest_algorithm_available : public vmime::exception class VMIME_EXPORT no_digest_algorithm_available : public vmime::exception
{ {
public: public:
@ -152,7 +152,7 @@ public:
}; };
class no_such_parameter : public vmime::exception class VMIME_EXPORT no_such_parameter : public vmime::exception
{ {
public: public:
@ -164,7 +164,7 @@ public:
}; };
class no_such_field : public vmime::exception class VMIME_EXPORT no_such_field : public vmime::exception
{ {
public: public:
@ -176,7 +176,7 @@ public:
}; };
class no_such_part : public vmime::exception class VMIME_EXPORT no_such_part : public vmime::exception
{ {
public: public:
@ -188,7 +188,7 @@ public:
}; };
class no_such_mailbox : public vmime::exception class VMIME_EXPORT no_such_mailbox : public vmime::exception
{ {
public: public:
@ -200,7 +200,7 @@ public:
}; };
class no_such_message_id : public vmime::exception class VMIME_EXPORT no_such_message_id : public vmime::exception
{ {
public: public:
@ -212,7 +212,7 @@ public:
}; };
class no_such_address : public vmime::exception class VMIME_EXPORT no_such_address : public vmime::exception
{ {
public: public:
@ -224,7 +224,7 @@ public:
}; };
class open_file_error : public vmime::exception class VMIME_EXPORT open_file_error : public vmime::exception
{ {
public: public:
@ -236,7 +236,7 @@ public:
}; };
class no_factory_available : public vmime::exception class VMIME_EXPORT no_factory_available : public vmime::exception
{ {
public: public:
@ -248,7 +248,7 @@ public:
}; };
class no_platform_handler : public vmime::exception class VMIME_EXPORT no_platform_handler : public vmime::exception
{ {
public: public:
@ -263,7 +263,7 @@ public:
/** No expeditor specified. /** No expeditor specified.
*/ */
class no_expeditor : public vmime::exception class VMIME_EXPORT no_expeditor : public vmime::exception
{ {
public: public:
@ -278,7 +278,7 @@ public:
/** No recipient specified. /** No recipient specified.
*/ */
class no_recipient : public vmime::exception class VMIME_EXPORT no_recipient : public vmime::exception
{ {
public: public:
@ -290,7 +290,7 @@ public:
}; };
class no_object_found : public vmime::exception class VMIME_EXPORT no_object_found : public vmime::exception
{ {
public: public:
@ -305,7 +305,7 @@ public:
/** There is no property with that name in the set. /** There is no property with that name in the set.
*/ */
class no_such_property : public vmime::exception class VMIME_EXPORT no_such_property : public vmime::exception
{ {
public: public:
@ -320,7 +320,7 @@ public:
/** Bad type specified when reading property. /** Bad type specified when reading property.
*/ */
class invalid_property_type : public vmime::exception class VMIME_EXPORT invalid_property_type : public vmime::exception
{ {
public: public:
@ -335,7 +335,7 @@ public:
/** Bad argument was passed to the function. /** Bad argument was passed to the function.
*/ */
class invalid_argument : public vmime::exception class VMIME_EXPORT invalid_argument : public vmime::exception
{ {
public: public:
@ -350,7 +350,7 @@ public:
/** Underlying operating system error. /** Underlying operating system error.
*/ */
class system_error : public vmime::exception class VMIME_EXPORT system_error : public vmime::exception
{ {
public: public:
@ -365,7 +365,7 @@ public:
/** The URL is malformed. /** The URL is malformed.
*/ */
class malformed_url : public vmime::exception class VMIME_EXPORT malformed_url : public vmime::exception
{ {
public: public:
@ -384,7 +384,7 @@ public:
/** Base class for exceptions thrown by the networking module. /** Base class for exceptions thrown by the networking module.
*/ */
class net_exception : public vmime::exception class VMIME_EXPORT net_exception : public vmime::exception
{ {
public: public:
@ -405,7 +405,7 @@ typedef net_exception messaging_exception;
/** Socket error. /** Socket error.
*/ */
class socket_exception : public net_exception class VMIME_EXPORT socket_exception : public net_exception
{ {
public: public:
@ -422,7 +422,7 @@ public:
* or a connection error (for example, time-out while connecting). * or a connection error (for example, time-out while connecting).
*/ */
class connection_error : public socket_exception class VMIME_EXPORT connection_error : public socket_exception
{ {
public: public:
@ -437,7 +437,7 @@ public:
/** Server did not initiated the connection correctly. /** Server did not initiated the connection correctly.
*/ */
class connection_greeting_error : public net_exception class VMIME_EXPORT connection_greeting_error : public net_exception
{ {
public: public:
@ -459,7 +459,7 @@ private:
* or password, or wrong authentication method). * or password, or wrong authentication method).
*/ */
class authentication_error : public net_exception class VMIME_EXPORT authentication_error : public net_exception
{ {
public: public:
@ -480,7 +480,7 @@ private:
/** Option not supported. /** Option not supported.
*/ */
class unsupported_option : public net_exception class VMIME_EXPORT unsupported_option : public net_exception
{ {
public: public:
@ -495,7 +495,7 @@ public:
/** No service available for this protocol. /** No service available for this protocol.
*/ */
class no_service_available : public net_exception class VMIME_EXPORT no_service_available : public net_exception
{ {
public: public:
@ -511,7 +511,7 @@ public:
* operation (for example, you try to close a folder which is not open). * operation (for example, you try to close a folder which is not open).
*/ */
class illegal_state : public net_exception class VMIME_EXPORT illegal_state : public net_exception
{ {
public: public:
@ -526,7 +526,7 @@ public:
/** Folder not found (does not exist). /** Folder not found (does not exist).
*/ */
class folder_not_found : public net_exception class VMIME_EXPORT folder_not_found : public net_exception
{ {
public: public:
@ -541,7 +541,7 @@ public:
/** Message not found (does not exist). /** Message not found (does not exist).
*/ */
class message_not_found : public net_exception class VMIME_EXPORT message_not_found : public net_exception
{ {
public: public:
@ -556,7 +556,7 @@ public:
/** Operation not supported by the underlying protocol. /** Operation not supported by the underlying protocol.
*/ */
class operation_not_supported : public net_exception class VMIME_EXPORT operation_not_supported : public net_exception
{ {
public: public:
@ -571,7 +571,7 @@ public:
/** The operation timed out (time-out delay is elapsed). /** The operation timed out (time-out delay is elapsed).
*/ */
class operation_timed_out : public net_exception class VMIME_EXPORT operation_timed_out : public net_exception
{ {
public: public:
@ -586,7 +586,7 @@ public:
/** The operation has been cancelled. /** The operation has been cancelled.
*/ */
class operation_cancelled : public net_exception class VMIME_EXPORT operation_cancelled : public net_exception
{ {
public: public:
@ -602,7 +602,7 @@ public:
* the requested object. * the requested object.
*/ */
class unfetched_object : public net_exception class VMIME_EXPORT unfetched_object : public net_exception
{ {
public: public:
@ -617,7 +617,7 @@ public:
/** The service is not currently connected. /** The service is not currently connected.
*/ */
class not_connected : public net_exception class VMIME_EXPORT not_connected : public net_exception
{ {
public: public:
@ -632,7 +632,7 @@ public:
/** The service is already connected (must disconnect before). /** The service is already connected (must disconnect before).
*/ */
class already_connected : public net_exception class VMIME_EXPORT already_connected : public net_exception
{ {
public: public:
@ -647,7 +647,7 @@ public:
/** Illegal operation: cannot run this operation on the object. /** Illegal operation: cannot run this operation on the object.
*/ */
class illegal_operation : public net_exception class VMIME_EXPORT illegal_operation : public net_exception
{ {
public: public:
@ -662,7 +662,7 @@ public:
/** Command error: operation failed (this is specific to the underlying protocol). /** Command error: operation failed (this is specific to the underlying protocol).
*/ */
class command_error : public net_exception class VMIME_EXPORT command_error : public net_exception
{ {
public: public:
@ -696,7 +696,7 @@ private:
/** The server returned an invalid response. /** The server returned an invalid response.
*/ */
class invalid_response : public net_exception class VMIME_EXPORT invalid_response : public net_exception
{ {
public: public:
@ -730,7 +730,7 @@ private:
/** Partial fetch is not supported by the underlying protocol. /** Partial fetch is not supported by the underlying protocol.
*/ */
class partial_fetch_not_supported : public net_exception class VMIME_EXPORT partial_fetch_not_supported : public net_exception
{ {
public: public:
@ -745,7 +745,7 @@ public:
/** Folder name is invalid. /** Folder name is invalid.
*/ */
class invalid_folder_name : public net_exception class VMIME_EXPORT invalid_folder_name : public net_exception
{ {
public: public:
@ -766,7 +766,7 @@ public:
/** Base class for exceptions thrown by the filesystem features. /** Base class for exceptions thrown by the filesystem features.
*/ */
class filesystem_exception : public vmime::exception class VMIME_EXPORT filesystem_exception : public vmime::exception
{ {
public: public:
@ -791,7 +791,7 @@ private:
/** File is not a directory. /** File is not a directory.
*/ */
class not_a_directory : public filesystem_exception class VMIME_EXPORT not_a_directory : public filesystem_exception
{ {
public: public:
@ -806,7 +806,7 @@ public:
/** File not found. /** File not found.
*/ */
class file_not_found : public filesystem_exception class VMIME_EXPORT file_not_found : public filesystem_exception
{ {
public: public:
@ -824,7 +824,7 @@ public:
/** Authentication exception. /** Authentication exception.
*/ */
class authentication_exception : public vmime::exception class VMIME_EXPORT authentication_exception : public vmime::exception
{ {
public: public:
@ -839,7 +839,7 @@ public:
/** The requested information cannot be provided. /** The requested information cannot be provided.
*/ */
class no_auth_information : public authentication_exception class VMIME_EXPORT no_auth_information : public authentication_exception
{ {
public: public:
@ -857,7 +857,7 @@ public:
/** Base class for exceptions thrown by SASL module. /** Base class for exceptions thrown by SASL module.
*/ */
class sasl_exception : public authentication_exception class VMIME_EXPORT sasl_exception : public authentication_exception
{ {
public: public:
@ -872,7 +872,7 @@ public:
/** No mechanism is registered with the specified name. /** No mechanism is registered with the specified name.
*/ */
class no_such_mechanism : public sasl_exception class VMIME_EXPORT no_such_mechanism : public sasl_exception
{ {
public: public:
@ -893,7 +893,7 @@ public:
/** Base class for exceptions thrown by TLS module. /** Base class for exceptions thrown by TLS module.
*/ */
class tls_exception : public vmime::exception class VMIME_EXPORT tls_exception : public vmime::exception
{ {
public: public:
@ -905,7 +905,7 @@ public:
}; };
class certificate_exception : public tls_exception class VMIME_EXPORT certificate_exception : public tls_exception
{ {
public: public:
@ -917,7 +917,7 @@ public:
}; };
class certificate_verification_exception : public certificate_exception class VMIME_EXPORT certificate_verification_exception : public certificate_exception
{ {
public: public:
@ -929,7 +929,7 @@ public:
}; };
class unsupported_certificate_type : public certificate_exception class VMIME_EXPORT unsupported_certificate_type : public certificate_exception
{ {
public: public:

View File

@ -42,7 +42,7 @@ namespace vmime
/** Attachment of type 'file'. /** Attachment of type 'file'.
*/ */
class fileAttachment : public defaultAttachment class VMIME_EXPORT fileAttachment : public defaultAttachment
{ {
public: public:

View File

@ -38,7 +38,7 @@ namespace vmime
/** A message attachment that can be extracted from a message. /** A message attachment that can be extracted from a message.
*/ */
class generatedMessageAttachment : public messageAttachment class VMIME_EXPORT generatedMessageAttachment : public messageAttachment
{ {
public: public:

View File

@ -35,7 +35,7 @@ namespace vmime
/** Holds configuration parameters used for generating messages. /** Holds configuration parameters used for generating messages.
*/ */
class generationContext : public context class VMIME_EXPORT generationContext : public context
{ {
public: public:

View File

@ -43,7 +43,7 @@ class bodyPart;
/** Header section of a MIME part. /** Header section of a MIME part.
*/ */
class header : public component class VMIME_EXPORT header : public component
{ {
friend class bodyPart; friend class bodyPart;
friend class body; friend class body;

View File

@ -37,7 +37,7 @@ namespace vmime
/** Base class for header fields. /** Base class for header fields.
*/ */
class headerField : public component class VMIME_EXPORT headerField : public component
{ {
friend class headerFieldFactory; friend class headerFieldFactory;
friend class header; friend class header;

View File

@ -36,7 +36,7 @@ namespace vmime
/** Creates header field and header field value objects. /** Creates header field and header field value objects.
*/ */
class headerFieldFactory class VMIME_EXPORT headerFieldFactory
{ {
protected: protected:

View File

@ -37,7 +37,7 @@ namespace vmime
* for a header field. * for a header field.
*/ */
class headerFieldValue : public component class VMIME_EXPORT headerFieldValue : public component
{ {
public: public:

View File

@ -39,7 +39,7 @@ namespace vmime
/** Text part of type 'text/html'. /** Text part of type 'text/html'.
*/ */
class htmlTextPart : public textPart class VMIME_EXPORT htmlTextPart : public textPart
{ {
public: public:

View File

@ -37,7 +37,7 @@ namespace vmime
/** A mailbox: full name + email (basic type). /** A mailbox: full name + email (basic type).
*/ */
class mailbox : public address class VMIME_EXPORT mailbox : public address
{ {
friend class mailboxGroup; friend class mailboxGroup;
friend class mailboxField; friend class mailboxField;

View File

@ -41,7 +41,7 @@ namespace vmime
* and contains multiple addresses. * and contains multiple addresses.
*/ */
class mailboxField : public headerField class VMIME_EXPORT mailboxField : public headerField
{ {
friend class vmime::creator; // create ref friend class vmime::creator; // create ref

View File

@ -37,7 +37,7 @@ namespace vmime
/** A group of mailboxes (basic type). /** A group of mailboxes (basic type).
*/ */
class mailboxGroup : public address class VMIME_EXPORT mailboxGroup : public address
{ {
public: public:

View File

@ -39,7 +39,7 @@ namespace vmime
* from inserting mailbox groups where it is not allowed by the RFC. * from inserting mailbox groups where it is not allowed by the RFC.
*/ */
class mailboxList : public headerFieldValue class VMIME_EXPORT mailboxList : public headerFieldValue
{ {
public: public:

View File

@ -39,7 +39,7 @@ namespace mdn {
* Notifications (MDN), as defined in RFC-3798. * Notifications (MDN), as defined in RFC-3798.
*/ */
class MDNHelper class VMIME_EXPORT MDNHelper
{ {
public: public:

View File

@ -36,7 +36,7 @@ namespace mdn {
/** Holds information about Message Disposition Notifications (MDN). /** Holds information about Message Disposition Notifications (MDN).
*/ */
class MDNInfos : public object class VMIME_EXPORT MDNInfos : public object
{ {
public: public:

View File

@ -40,7 +40,7 @@ namespace mdn {
* that has been received. * that has been received.
*/ */
class receivedMDNInfos : public MDNInfos class VMIME_EXPORT receivedMDNInfos : public MDNInfos
{ {
public: public:

View File

@ -38,7 +38,7 @@ namespace mdn {
* that is to be sent. * that is to be sent.
*/ */
class sendableMDNInfos : public MDNInfos class VMIME_EXPORT sendableMDNInfos : public MDNInfos
{ {
public: public:

View File

@ -36,7 +36,7 @@ namespace vmime
/** Content media type (basic type). /** Content media type (basic type).
*/ */
class mediaType : public headerFieldValue class VMIME_EXPORT mediaType : public headerFieldValue
{ {
public: public:

View File

@ -36,7 +36,7 @@ namespace vmime
/** A MIME message. /** A MIME message.
*/ */
class message : public bodyPart class VMIME_EXPORT message : public bodyPart
{ {
public: public:

View File

@ -36,7 +36,7 @@ namespace vmime
/** Attachment of type message/rfc822. /** Attachment of type message/rfc822.
*/ */
class messageAttachment : public attachment class VMIME_EXPORT messageAttachment : public attachment
{ {
public: public:

View File

@ -44,7 +44,7 @@ namespace vmime
/** A helper for building MIME messages. /** A helper for building MIME messages.
*/ */
class messageBuilder class VMIME_EXPORT messageBuilder
{ {
public: public:

View File

@ -36,7 +36,7 @@ namespace vmime
/** Message identifier (basic type). /** Message identifier (basic type).
*/ */
class messageId : public headerFieldValue class VMIME_EXPORT messageId : public headerFieldValue
{ {
friend class messageIdSequence; friend class messageIdSequence;

View File

@ -35,7 +35,7 @@ namespace vmime
/** A list of message identifiers (basic type). /** A list of message identifiers (basic type).
*/ */
class messageIdSequence : public headerFieldValue class VMIME_EXPORT messageIdSequence : public headerFieldValue
{ {
public: public:

View File

@ -44,7 +44,7 @@ namespace vmime
/** A helper for parsing MIME messages. /** A helper for parsing MIME messages.
*/ */
class messageParser class VMIME_EXPORT messageParser
{ {
public: public:

View File

@ -39,7 +39,7 @@ namespace misc {
* and 'Importance' (RFC-1327, RFC-1911) fields. * and 'Importance' (RFC-1327, RFC-1911) fields.
*/ */
class importanceHelper class VMIME_EXPORT importanceHelper
{ {
public: public:

View File

@ -40,7 +40,7 @@ namespace net {
/** Information about the connection used by a service. /** Information about the connection used by a service.
*/ */
class connectionInfos : public object class VMIME_EXPORT connectionInfos : public object
{ {
public: public:

View File

@ -40,7 +40,7 @@ namespace net {
/** Information about the connection used by a service. /** Information about the connection used by a service.
*/ */
class defaultConnectionInfos : public connectionInfos class VMIME_EXPORT defaultConnectionInfos : public connectionInfos
{ {
public: public:

View File

@ -47,7 +47,7 @@ namespace events {
/** Event about the message count in a folder. /** Event about the message count in a folder.
*/ */
class messageCountEvent class VMIME_EXPORT messageCountEvent
{ {
public: public:
@ -95,7 +95,7 @@ private:
/** Listener for events about the message count in a folder. /** Listener for events about the message count in a folder.
*/ */
class messageCountListener class VMIME_EXPORT messageCountListener
{ {
protected: protected:
@ -111,7 +111,7 @@ public:
/** Event occuring on a message. /** Event occuring on a message.
*/ */
class messageChangedEvent class VMIME_EXPORT messageChangedEvent
{ {
public: public:
@ -158,7 +158,7 @@ private:
/** Listener for events occuring on a message. /** Listener for events occuring on a message.
*/ */
class messageChangedListener class VMIME_EXPORT messageChangedListener
{ {
protected: protected:
@ -173,7 +173,7 @@ public:
/** Event occuring on a folder. /** Event occuring on a folder.
*/ */
class folderEvent class VMIME_EXPORT folderEvent
{ {
public: public:
@ -217,7 +217,7 @@ private:
/** Listener for events occuring on a folder. /** Listener for events occuring on a folder.
*/ */
class folderListener class VMIME_EXPORT folderListener
{ {
protected: protected:

View File

@ -55,7 +55,7 @@ class store;
/** Abstract representation of a folder in a message store. /** Abstract representation of a folder in a message store.
*/ */
class folder : public object class VMIME_EXPORT folder : public object
{ {
protected: protected:

View File

@ -50,7 +50,7 @@ class structure;
/** A MIME part in a message. /** A MIME part in a message.
*/ */
class part : public object class VMIME_EXPORT part : public object
{ {
protected: protected:
@ -126,7 +126,7 @@ public:
/** Structure of a MIME part/message. /** Structure of a MIME part/message.
*/ */
class structure : public object class VMIME_EXPORT structure : public object
{ {
protected: protected:
@ -164,7 +164,7 @@ public:
/** Abstract representation of a message in a store/transport service. /** Abstract representation of a message in a store/transport service.
*/ */
class message : public object class VMIME_EXPORT message : public object
{ {
protected: protected:

View File

@ -40,7 +40,7 @@ namespace net {
/** Information about the secured connection used by a service. /** Information about the secured connection used by a service.
*/ */
class securedConnectionInfos : public connectionInfos class VMIME_EXPORT securedConnectionInfos : public connectionInfos
{ {
}; };

View File

@ -55,7 +55,7 @@ namespace net {
/** Base class for messaging services. /** Base class for messaging services.
*/ */
class service : public object class VMIME_EXPORT service : public object
{ {
protected: protected:

View File

@ -58,7 +58,7 @@ class session;
/** A factory to create 'service' objects for a specified protocol. /** A factory to create 'service' objects for a specified protocol.
*/ */
class serviceFactory class VMIME_EXPORT serviceFactory
{ {
private: private:

View File

@ -45,7 +45,7 @@ namespace net {
/** Stores information about a messaging service. /** Stores information about a messaging service.
*/ */
class serviceInfos class VMIME_EXPORT serviceInfos
{ {
friend class serviceFactory; friend class serviceFactory;

View File

@ -50,7 +50,7 @@ class transport;
* for connection to a service. * for connection to a service.
*/ */
class session : public object class VMIME_EXPORT session : public object
{ {
public: public:

View File

@ -43,7 +43,7 @@ namespace net {
/** Interface for connecting to servers. /** Interface for connecting to servers.
*/ */
class socket : public object class VMIME_EXPORT socket : public object
{ {
public: public:

View File

@ -43,7 +43,7 @@ namespace net {
* Encapsulate protocols that provide access to user's mail drop. * Encapsulate protocols that provide access to user's mail drop.
*/ */
class store : public service class VMIME_EXPORT store : public service
{ {
protected: protected:

View File

@ -41,7 +41,7 @@ namespace net {
/** A class to manage time-out in messaging services. /** A class to manage time-out in messaging services.
*/ */
class timeoutHandler : public object class VMIME_EXPORT timeoutHandler : public object
{ {
public: public:

View File

@ -47,7 +47,7 @@ class TLSSocket;
/** Information about a TLS-secured connection used by a service. /** Information about a TLS-secured connection used by a service.
*/ */
class TLSSecuredConnectionInfos : public securedConnectionInfos class VMIME_EXPORT TLSSecuredConnectionInfos : public securedConnectionInfos
{ {
public: public:

View File

@ -45,7 +45,7 @@ namespace tls {
/** Describe a TLS connection between a client and a server. /** Describe a TLS connection between a client and a server.
*/ */
class TLSSession : public object class VMIME_EXPORT TLSSession : public object
{ {
public: public:

View File

@ -49,7 +49,7 @@ class TLSSession;
/** Add a TLS security layer to an existing socket. /** Add a TLS security layer to an existing socket.
*/ */
class TLSSocket : public socket class VMIME_EXPORT TLSSocket : public socket
{ {
public: public:

View File

@ -52,7 +52,7 @@ namespace net {
* Encapsulate protocols that can send messages. * Encapsulate protocols that can send messages.
*/ */
class transport : public service class VMIME_EXPORT transport : public service
{ {
protected: protected:

View File

@ -39,7 +39,7 @@ namespace vmime
* reference counting and auto-deletion. * reference counting and auto-deletion.
*/ */
class object class VMIME_EXPORT object
{ {
template <class T> friend class utility::ref; template <class T> friend class utility::ref;
template <class T> friend class utility::weak_ref; template <class T> friend class utility::weak_ref;

View File

@ -34,7 +34,7 @@ namespace vmime
{ {
class parameter : public component class VMIME_EXPORT parameter : public component
{ {
friend class parameterizedHeaderField; friend class parameterizedHeaderField;

View File

@ -39,7 +39,7 @@ namespace vmime
* Parameters can be created using vmime::parameterFactory. * Parameters can be created using vmime::parameterFactory.
*/ */
class parameterizedHeaderField : virtual public headerField class VMIME_EXPORT parameterizedHeaderField : virtual public headerField
{ {
friend class vmime::creator; // create ref friend class vmime::creator; // create ref

View File

@ -37,7 +37,7 @@ namespace vmime
/** A message attachment that can be generated into a message. /** A message attachment that can be generated into a message.
*/ */
class parsedMessageAttachment : public messageAttachment class VMIME_EXPORT parsedMessageAttachment : public messageAttachment
{ {
public: public:

View File

@ -35,7 +35,7 @@ namespace vmime
/** Holds configuration parameters used for parsing messages. /** Holds configuration parameters used for parsing messages.
*/ */
class parsingContext : public context class VMIME_EXPORT parsingContext : public context
{ {
public: public:

View File

@ -35,7 +35,7 @@ namespace vmime
/** A path: a local part + '@' + a domain. /** A path: a local part + '@' + a domain.
*/ */
class path : public headerFieldValue class VMIME_EXPORT path : public headerFieldValue
{ {
public: public:

View File

@ -35,7 +35,7 @@ namespace vmime
/** Text part of type 'text/plain'. /** Text part of type 'text/plain'.
*/ */
class plainTextPart : public textPart class VMIME_EXPORT plainTextPart : public textPart
{ {
public: public:

View File

@ -50,7 +50,7 @@ namespace vmime
/** Allow setting or getting the current platform handler. /** Allow setting or getting the current platform handler.
*/ */
class platform class VMIME_EXPORT platform
{ {
public: public:
@ -58,7 +58,7 @@ public:
* access platform-dependent objects: sockets, date/time, file system, etc. * access platform-dependent objects: sockets, date/time, file system, etc.
*/ */
class handler : public object class VMIME_EXPORT handler : public object
{ {
public: public:

View File

@ -43,7 +43,7 @@ namespace vmime
/** Manage a list of (name,value) pairs. /** Manage a list of (name,value) pairs.
*/ */
class propertySet : public object class VMIME_EXPORT propertySet : public object
{ {
public: public:

View File

@ -38,7 +38,7 @@ namespace vmime
/** Trace information about a relay (basic type). /** Trace information about a relay (basic type).
*/ */
class relay : public headerFieldValue class VMIME_EXPORT relay : public headerFieldValue
{ {
public: public:

View File

@ -60,7 +60,7 @@ namespace security {
* WARNING: an authenticator should be used with one and ONLY ONE messaging * WARNING: an authenticator should be used with one and ONLY ONE messaging
* service at a time. * service at a time.
*/ */
class authenticator : public object class VMIME_EXPORT authenticator : public object
{ {
public: public:

View File

@ -47,7 +47,7 @@ namespace cert {
/** Identity certificate based on X.509 standard. /** Identity certificate based on X.509 standard.
*/ */
class X509Certificate : public certificate class VMIME_EXPORT X509Certificate : public certificate
{ {
public: public:

View File

@ -35,7 +35,7 @@ namespace cert {
/** Identity certificate for a peer. /** Identity certificate for a peer.
*/ */
class certificate : public object class VMIME_EXPORT certificate : public object
{ {
public: public:

View File

@ -38,7 +38,7 @@ namespace cert {
/** An ordered list of certificates, from the subject certificate to /** An ordered list of certificates, from the subject certificate to
* the issuer certificate. * the issuer certificate.
*/ */
class certificateChain : public object class VMIME_EXPORT certificateChain : public object
{ {
public: public:

View File

@ -37,7 +37,7 @@ namespace cert {
/** Verify that a certificate path issued by a server can be trusted. /** Verify that a certificate path issued by a server can be trusted.
*/ */
class certificateVerifier : public object class VMIME_EXPORT certificateVerifier : public object
{ {
public: public:

View File

@ -38,7 +38,7 @@ class X509Certificate;
/** Default implementation for certificate verification. /** Default implementation for certificate verification.
*/ */
class defaultCertificateVerifier : public certificateVerifier class VMIME_EXPORT defaultCertificateVerifier : public certificateVerifier
{ {
private: private:

View File

@ -41,7 +41,7 @@ namespace security {
/** An authenticator that can provide some basic information by /** An authenticator that can provide some basic information by
* reading in the messaging session properties. * reading in the messaging session properties.
*/ */
class defaultAuthenticator : public authenticator class VMIME_EXPORT defaultAuthenticator : public authenticator
{ {
public: public:

View File

@ -38,7 +38,7 @@ namespace digest {
* such as MD5 or SHA. * such as MD5 or SHA.
*/ */
class messageDigest : public object class VMIME_EXPORT messageDigest : public object
{ {
public: public:

View File

@ -38,7 +38,7 @@ namespace digest {
/** Creates instances of message digest algorithms. /** Creates instances of message digest algorithms.
*/ */
class messageDigestFactory class VMIME_EXPORT messageDigestFactory
{ {
private: private:

View File

@ -50,7 +50,7 @@ class SASLSession;
* Usually, you should not inherit from this class, but instead from the * Usually, you should not inherit from this class, but instead from the
* more convenient defaultSASLAuthenticator class. * more convenient defaultSASLAuthenticator class.
*/ */
class SASLAuthenticator : public authenticator class VMIME_EXPORT SASLAuthenticator : public authenticator
{ {
public: public:

View File

@ -44,7 +44,7 @@ namespace sasl {
/** An SASL client context. /** An SASL client context.
*/ */
class SASLContext : public object class VMIME_EXPORT SASLContext : public object
{ {
friend class SASLSession; friend class SASLSession;
friend class builtinSASLMechanism; friend class builtinSASLMechanism;

View File

@ -44,7 +44,7 @@ class SASLSession;
/** An SASL mechanism. /** An SASL mechanism.
*/ */
class SASLMechanism : public object class VMIME_EXPORT SASLMechanism : public object
{ {
public: public:

View File

@ -49,7 +49,7 @@ class SASLContext;
/** Constructs SASL mechanism objects. /** Constructs SASL mechanism objects.
*/ */
class SASLMechanismFactory : public object class VMIME_EXPORT SASLMechanismFactory : public object
{ {
private: private:

View File

@ -48,7 +48,7 @@ class SASLContext;
/** An SASL client session. /** An SASL client session.
*/ */
class SASLSession : public object class VMIME_EXPORT SASLSession : public object
{ {
friend class builtinSASLMechanism; friend class builtinSASLMechanism;
friend class SASLSocket; friend class SASLSocket;

View File

@ -46,7 +46,7 @@ class SASLSession;
/** A socket which provides data integrity and/or privacy protection. /** A socket which provides data integrity and/or privacy protection.
*/ */
class SASLSocket : public net::socket class VMIME_EXPORT SASLSocket : public net::socket
{ {
public: public:

View File

@ -45,7 +45,7 @@ class SASLContext;
/** A built-in authentication mechanism that relies on /** A built-in authentication mechanism that relies on
* the GNU SASL library. * the GNU SASL library.
*/ */
class builtinSASLMechanism : public SASLMechanism class VMIME_EXPORT builtinSASLMechanism : public SASLMechanism
{ {
public: public:

View File

@ -43,7 +43,7 @@ namespace sasl {
/** An authenticator that is capable of providing information /** An authenticator that is capable of providing information
* for simple authentication mechanisms (username and password). * for simple authentication mechanisms (username and password).
*/ */
class defaultSASLAuthenticator : public SASLAuthenticator class VMIME_EXPORT defaultSASLAuthenticator : public SASLAuthenticator
{ {
public: public:

View File

@ -32,7 +32,7 @@ namespace vmime
{ {
class streamContentHandler : public contentHandler class VMIME_EXPORT streamContentHandler : public contentHandler
{ {
public: public:

View File

@ -32,7 +32,7 @@ namespace vmime
{ {
class stringContentHandler : public contentHandler class VMIME_EXPORT stringContentHandler : public contentHandler
{ {
public: public:

View File

@ -37,7 +37,7 @@ namespace vmime
/** List of encoded-words, as defined in RFC-2047 (basic type). /** List of encoded-words, as defined in RFC-2047 (basic type).
*/ */
class text : public headerFieldValue class VMIME_EXPORT text : public headerFieldValue
{ {
public: public:

View File

@ -39,7 +39,7 @@ namespace vmime
/** Generic text part. /** Generic text part.
*/ */
class textPart : public object class VMIME_EXPORT textPart : public object
{ {
friend class textPartFactory; friend class textPartFactory;
friend class messageBuilder; // for generateIn, getPartCount friend class messageBuilder; // for generateIn, getPartCount

View File

@ -33,7 +33,7 @@ namespace vmime
{ {
class textPartFactory class VMIME_EXPORT textPartFactory
{ {
protected: protected:

View File

@ -39,7 +39,7 @@ namespace utility {
* and/or standard output. * and/or standard output.
*/ */
class childProcess : public object class VMIME_EXPORT childProcess : public object
{ {
public: public:

Some files were not shown because too many files have changed in this diff Show More