DXR is a code search and navigation tool aimed at making sense of large projects. It supports full-text and regex searches as well as structural queries.

Untracked file

Line Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506
/*
 * DO NOT EDIT.  THIS FILE IS GENERATED FROM /home/jenkins/src/releases/comm-beta/mailnews/compose/public/nsIMsgCompFields.idl
 */

#ifndef __gen_nsIMsgCompFields_h__
#define __gen_nsIMsgCompFields_h__


#ifndef __gen_msgIStructuredHeaders_h__
#include "msgIStructuredHeaders.h"
#endif

#include "js/GCAnnotations.h"

/* For IDL files that don't want to include root IDL files. */
#ifndef NS_NO_VTABLE
#define NS_NO_VTABLE
#endif
class nsIMsgAttachment; /* forward declaration */

class nsISimpleEnumerator; /* forward declaration */


/* starting interface:    nsIMsgCompFields */
#define NS_IMSGCOMPFIELDS_IID_STR "10928477-4f24-4357-9397-fbd847f46f0a"

#define NS_IMSGCOMPFIELDS_IID \
  {0x10928477, 0x4f24, 0x4357, \
    { 0x93, 0x97, 0xfb, 0xd8, 0x47, 0xf4, 0x6f, 0x0a }}

class NS_NO_VTABLE nsIMsgCompFields : public msgIWritableStructuredHeaders {
 public:

  NS_DECLARE_STATIC_IID_ACCESSOR(NS_IMSGCOMPFIELDS_IID)

  /* attribute AString from; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetFrom(nsAString& aFrom) = 0;
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetFrom(const nsAString& aFrom) = 0;

  /* attribute AString replyTo; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetReplyTo(nsAString& aReplyTo) = 0;
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetReplyTo(const nsAString& aReplyTo) = 0;

  /* attribute AString to; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetTo(nsAString& aTo) = 0;
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetTo(const nsAString& aTo) = 0;

  /* attribute AString cc; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetCc(nsAString& aCc) = 0;
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetCc(const nsAString& aCc) = 0;

  /* attribute AString bcc; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetBcc(nsAString& aBcc) = 0;
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetBcc(const nsAString& aBcc) = 0;

  /* readonly attribute bool hasRecipients; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetHasRecipients(bool *aHasRecipients) = 0;

  /* attribute AString fcc; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetFcc(nsAString& aFcc) = 0;
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetFcc(const nsAString& aFcc) = 0;

  /* attribute AString fcc2; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetFcc2(nsAString& aFcc2) = 0;
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetFcc2(const nsAString& aFcc2) = 0;

  /* attribute AString newsgroups; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetNewsgroups(nsAString& aNewsgroups) = 0;
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetNewsgroups(const nsAString& aNewsgroups) = 0;

  /* attribute string newspostUrl; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetNewspostUrl(char * *aNewspostUrl) = 0;
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetNewspostUrl(const char * aNewspostUrl) = 0;

  /* attribute AString followupTo; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetFollowupTo(nsAString& aFollowupTo) = 0;
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetFollowupTo(const nsAString& aFollowupTo) = 0;

  /* attribute AString subject; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetSubject(nsAString& aSubject) = 0;
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetSubject(const nsAString& aSubject) = 0;

  /* attribute AString organization; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetOrganization(nsAString& aOrganization) = 0;
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetOrganization(const nsAString& aOrganization) = 0;

  /* attribute string references; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetReferences(char * *aReferences) = 0;
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetReferences(const char * aReferences) = 0;

  /* attribute string priority; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetPriority(char * *aPriority) = 0;
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetPriority(const char * aPriority) = 0;

  /* attribute string messageId; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetMessageId(char * *aMessageId) = 0;
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetMessageId(const char * aMessageId) = 0;

  /* attribute string characterSet; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetCharacterSet(char * *aCharacterSet) = 0;
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetCharacterSet(const char * aCharacterSet) = 0;

  /* readonly attribute string defaultCharacterSet; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetDefaultCharacterSet(char * *aDefaultCharacterSet) = 0;

  /* attribute AString templateName; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetTemplateName(nsAString& aTemplateName) = 0;
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetTemplateName(const nsAString& aTemplateName) = 0;

  /* attribute string draftId; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetDraftId(char * *aDraftId) = 0;
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetDraftId(const char * aDraftId) = 0;

  /* attribute boolean returnReceipt; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetReturnReceipt(bool *aReturnReceipt) = 0;
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetReturnReceipt(bool aReturnReceipt) = 0;

  /* attribute long receiptHeaderType; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetReceiptHeaderType(int32_t *aReceiptHeaderType) = 0;
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetReceiptHeaderType(int32_t aReceiptHeaderType) = 0;

  /* attribute boolean DSN; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetDSN(bool *aDSN) = 0;
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetDSN(bool aDSN) = 0;

  /* attribute boolean attachVCard; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetAttachVCard(bool *aAttachVCard) = 0;
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetAttachVCard(bool aAttachVCard) = 0;

  /* attribute boolean forcePlainText; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetForcePlainText(bool *aForcePlainText) = 0;
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetForcePlainText(bool aForcePlainText) = 0;

  /* attribute boolean useMultipartAlternative; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetUseMultipartAlternative(bool *aUseMultipartAlternative) = 0;
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetUseMultipartAlternative(bool aUseMultipartAlternative) = 0;

  /* attribute boolean bodyIsAsciiOnly; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetBodyIsAsciiOnly(bool *aBodyIsAsciiOnly) = 0;
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetBodyIsAsciiOnly(bool aBodyIsAsciiOnly) = 0;

  /* attribute boolean forceMsgEncoding; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetForceMsgEncoding(bool *aForceMsgEncoding) = 0;
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetForceMsgEncoding(bool aForceMsgEncoding) = 0;

  /* attribute boolean attachmentReminder; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetAttachmentReminder(bool *aAttachmentReminder) = 0;
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetAttachmentReminder(bool aAttachmentReminder) = 0;

  /* attribute long deliveryFormat; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetDeliveryFormat(int32_t *aDeliveryFormat) = 0;
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetDeliveryFormat(int32_t aDeliveryFormat) = 0;

  /* attribute string contentLanguage; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetContentLanguage(char * *aContentLanguage) = 0;
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetContentLanguage(const char * aContentLanguage) = 0;

  /* attribute string creatorIdentityKey; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetCreatorIdentityKey(char * *aCreatorIdentityKey) = 0;
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetCreatorIdentityKey(const char * aCreatorIdentityKey) = 0;

  /* attribute AString body; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetBody(nsAString& aBody) = 0;
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetBody(const nsAString& aBody) = 0;

  /* readonly attribute nsISimpleEnumerator attachments; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetAttachments(nsISimpleEnumerator **aAttachments) = 0;

  /* void addAttachment (in nsIMsgAttachment attachment); */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD AddAttachment(nsIMsgAttachment *attachment) = 0;

  /* void removeAttachment (in nsIMsgAttachment attachment); */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD RemoveAttachment(nsIMsgAttachment *attachment) = 0;

  /* void removeAttachments (); */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD RemoveAttachments(void) = 0;

  /* void splitRecipients (in AString aRecipients, in boolean aEmailAddressOnly, out unsigned long aLength, [array, size_is (aLength), retval] out wstring aResult); */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SplitRecipients(const nsAString& aRecipients, bool aEmailAddressOnly, uint32_t *aLength, char16_t * **aResult) = 0;

  /* void ConvertBodyToPlainText (); */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD ConvertBodyToPlainText(void) = 0;

  /* attribute boolean needToCheckCharset; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetNeedToCheckCharset(bool *aNeedToCheckCharset) = 0;
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetNeedToCheckCharset(bool aNeedToCheckCharset) = 0;

  /* attribute nsISupports securityInfo; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetSecurityInfo(nsISupports **aSecurityInfo) = 0;
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetSecurityInfo(nsISupports *aSecurityInfo) = 0;

};

  NS_DEFINE_STATIC_IID_ACCESSOR(nsIMsgCompFields, NS_IMSGCOMPFIELDS_IID)

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSIMSGCOMPFIELDS \
  NS_IMETHOD GetFrom(nsAString& aFrom) override; \
  NS_IMETHOD SetFrom(const nsAString& aFrom) override; \
  NS_IMETHOD GetReplyTo(nsAString& aReplyTo) override; \
  NS_IMETHOD SetReplyTo(const nsAString& aReplyTo) override; \
  NS_IMETHOD GetTo(nsAString& aTo) override; \
  NS_IMETHOD SetTo(const nsAString& aTo) override; \
  NS_IMETHOD GetCc(nsAString& aCc) override; \
  NS_IMETHOD SetCc(const nsAString& aCc) override; \
  NS_IMETHOD GetBcc(nsAString& aBcc) override; \
  NS_IMETHOD SetBcc(const nsAString& aBcc) override; \
  NS_IMETHOD GetHasRecipients(bool *aHasRecipients) override; \
  NS_IMETHOD GetFcc(nsAString& aFcc) override; \
  NS_IMETHOD SetFcc(const nsAString& aFcc) override; \
  NS_IMETHOD GetFcc2(nsAString& aFcc2) override; \
  NS_IMETHOD SetFcc2(const nsAString& aFcc2) override; \
  NS_IMETHOD GetNewsgroups(nsAString& aNewsgroups) override; \
  NS_IMETHOD SetNewsgroups(const nsAString& aNewsgroups) override; \
  NS_IMETHOD GetNewspostUrl(char * *aNewspostUrl) override; \
  NS_IMETHOD SetNewspostUrl(const char * aNewspostUrl) override; \
  NS_IMETHOD GetFollowupTo(nsAString& aFollowupTo) override; \
  NS_IMETHOD SetFollowupTo(const nsAString& aFollowupTo) override; \
  NS_IMETHOD GetSubject(nsAString& aSubject) override; \
  NS_IMETHOD SetSubject(const nsAString& aSubject) override; \
  NS_IMETHOD GetOrganization(nsAString& aOrganization) override; \
  NS_IMETHOD SetOrganization(const nsAString& aOrganization) override; \
  NS_IMETHOD GetReferences(char * *aReferences) override; \
  NS_IMETHOD SetReferences(const char * aReferences) override; \
  NS_IMETHOD GetPriority(char * *aPriority) override; \
  NS_IMETHOD SetPriority(const char * aPriority) override; \
  NS_IMETHOD GetMessageId(char * *aMessageId) override; \
  NS_IMETHOD SetMessageId(const char * aMessageId) override; \
  NS_IMETHOD GetCharacterSet(char * *aCharacterSet) override; \
  NS_IMETHOD SetCharacterSet(const char * aCharacterSet) override; \
  NS_IMETHOD GetDefaultCharacterSet(char * *aDefaultCharacterSet) override; \
  NS_IMETHOD GetTemplateName(nsAString& aTemplateName) override; \
  NS_IMETHOD SetTemplateName(const nsAString& aTemplateName) override; \
  NS_IMETHOD GetDraftId(char * *aDraftId) override; \
  NS_IMETHOD SetDraftId(const char * aDraftId) override; \
  NS_IMETHOD GetReturnReceipt(bool *aReturnReceipt) override; \
  NS_IMETHOD SetReturnReceipt(bool aReturnReceipt) override; \
  NS_IMETHOD GetReceiptHeaderType(int32_t *aReceiptHeaderType) override; \
  NS_IMETHOD SetReceiptHeaderType(int32_t aReceiptHeaderType) override; \
  NS_IMETHOD GetDSN(bool *aDSN) override; \
  NS_IMETHOD SetDSN(bool aDSN) override; \
  NS_IMETHOD GetAttachVCard(bool *aAttachVCard) override; \
  NS_IMETHOD SetAttachVCard(bool aAttachVCard) override; \
  NS_IMETHOD GetForcePlainText(bool *aForcePlainText) override; \
  NS_IMETHOD SetForcePlainText(bool aForcePlainText) override; \
  NS_IMETHOD GetUseMultipartAlternative(bool *aUseMultipartAlternative) override; \
  NS_IMETHOD SetUseMultipartAlternative(bool aUseMultipartAlternative) override; \
  NS_IMETHOD GetBodyIsAsciiOnly(bool *aBodyIsAsciiOnly) override; \
  NS_IMETHOD SetBodyIsAsciiOnly(bool aBodyIsAsciiOnly) override; \
  NS_IMETHOD GetForceMsgEncoding(bool *aForceMsgEncoding) override; \
  NS_IMETHOD SetForceMsgEncoding(bool aForceMsgEncoding) override; \
  NS_IMETHOD GetAttachmentReminder(bool *aAttachmentReminder) override; \
  NS_IMETHOD SetAttachmentReminder(bool aAttachmentReminder) override; \
  NS_IMETHOD GetDeliveryFormat(int32_t *aDeliveryFormat) override; \
  NS_IMETHOD SetDeliveryFormat(int32_t aDeliveryFormat) override; \
  NS_IMETHOD GetContentLanguage(char * *aContentLanguage) override; \
  NS_IMETHOD SetContentLanguage(const char * aContentLanguage) override; \
  NS_IMETHOD GetCreatorIdentityKey(char * *aCreatorIdentityKey) override; \
  NS_IMETHOD SetCreatorIdentityKey(const char * aCreatorIdentityKey) override; \
  NS_IMETHOD GetBody(nsAString& aBody) override; \
  NS_IMETHOD SetBody(const nsAString& aBody) override; \
  NS_IMETHOD GetAttachments(nsISimpleEnumerator **aAttachments) override; \
  NS_IMETHOD AddAttachment(nsIMsgAttachment *attachment) override; \
  NS_IMETHOD RemoveAttachment(nsIMsgAttachment *attachment) override; \
  NS_IMETHOD RemoveAttachments(void) override; \
  NS_IMETHOD SplitRecipients(const nsAString& aRecipients, bool aEmailAddressOnly, uint32_t *aLength, char16_t * **aResult) override; \
  NS_IMETHOD ConvertBodyToPlainText(void) override; \
  NS_IMETHOD GetNeedToCheckCharset(bool *aNeedToCheckCharset) override; \
  NS_IMETHOD SetNeedToCheckCharset(bool aNeedToCheckCharset) override; \
  NS_IMETHOD GetSecurityInfo(nsISupports **aSecurityInfo) override; \
  NS_IMETHOD SetSecurityInfo(nsISupports *aSecurityInfo) override; 

/* Use this macro when declaring the members of this interface when the
   class doesn't implement the interface. This is useful for forwarding. */
#define NS_DECL_NON_VIRTUAL_NSIMSGCOMPFIELDS \
  nsresult GetFrom(nsAString& aFrom); \
  nsresult SetFrom(const nsAString& aFrom); \
  nsresult GetReplyTo(nsAString& aReplyTo); \
  nsresult SetReplyTo(const nsAString& aReplyTo); \
  nsresult GetTo(nsAString& aTo); \
  nsresult SetTo(const nsAString& aTo); \
  nsresult GetCc(nsAString& aCc); \
  nsresult SetCc(const nsAString& aCc); \
  nsresult GetBcc(nsAString& aBcc); \
  nsresult SetBcc(const nsAString& aBcc); \
  nsresult GetHasRecipients(bool *aHasRecipients); \
  nsresult GetFcc(nsAString& aFcc); \
  nsresult SetFcc(const nsAString& aFcc); \
  nsresult GetFcc2(nsAString& aFcc2); \
  nsresult SetFcc2(const nsAString& aFcc2); \
  nsresult GetNewsgroups(nsAString& aNewsgroups); \
  nsresult SetNewsgroups(const nsAString& aNewsgroups); \
  nsresult GetNewspostUrl(char * *aNewspostUrl); \
  nsresult SetNewspostUrl(const char * aNewspostUrl); \
  nsresult GetFollowupTo(nsAString& aFollowupTo); \
  nsresult SetFollowupTo(const nsAString& aFollowupTo); \
  nsresult GetSubject(nsAString& aSubject); \
  nsresult SetSubject(const nsAString& aSubject); \
  nsresult GetOrganization(nsAString& aOrganization); \
  nsresult SetOrganization(const nsAString& aOrganization); \
  nsresult GetReferences(char * *aReferences); \
  nsresult SetReferences(const char * aReferences); \
  nsresult GetPriority(char * *aPriority); \
  nsresult SetPriority(const char * aPriority); \
  nsresult GetMessageId(char * *aMessageId); \
  nsresult SetMessageId(const char * aMessageId); \
  nsresult GetCharacterSet(char * *aCharacterSet); \
  nsresult SetCharacterSet(const char * aCharacterSet); \
  nsresult GetDefaultCharacterSet(char * *aDefaultCharacterSet); \
  nsresult GetTemplateName(nsAString& aTemplateName); \
  nsresult SetTemplateName(const nsAString& aTemplateName); \
  nsresult GetDraftId(char * *aDraftId); \
  nsresult SetDraftId(const char * aDraftId); \
  nsresult GetReturnReceipt(bool *aReturnReceipt); \
  nsresult SetReturnReceipt(bool aReturnReceipt); \
  nsresult GetReceiptHeaderType(int32_t *aReceiptHeaderType); \
  nsresult SetReceiptHeaderType(int32_t aReceiptHeaderType); \
  nsresult GetDSN(bool *aDSN); \
  nsresult SetDSN(bool aDSN); \
  nsresult GetAttachVCard(bool *aAttachVCard); \
  nsresult SetAttachVCard(bool aAttachVCard); \
  nsresult GetForcePlainText(bool *aForcePlainText); \
  nsresult SetForcePlainText(bool aForcePlainText); \
  nsresult GetUseMultipartAlternative(bool *aUseMultipartAlternative); \
  nsresult SetUseMultipartAlternative(bool aUseMultipartAlternative); \
  nsresult GetBodyIsAsciiOnly(bool *aBodyIsAsciiOnly); \
  nsresult SetBodyIsAsciiOnly(bool aBodyIsAsciiOnly); \
  nsresult GetForceMsgEncoding(bool *aForceMsgEncoding); \
  nsresult SetForceMsgEncoding(bool aForceMsgEncoding); \
  nsresult GetAttachmentReminder(bool *aAttachmentReminder); \
  nsresult SetAttachmentReminder(bool aAttachmentReminder); \
  nsresult GetDeliveryFormat(int32_t *aDeliveryFormat); \
  nsresult SetDeliveryFormat(int32_t aDeliveryFormat); \
  nsresult GetContentLanguage(char * *aContentLanguage); \
  nsresult SetContentLanguage(const char * aContentLanguage); \
  nsresult GetCreatorIdentityKey(char * *aCreatorIdentityKey); \
  nsresult SetCreatorIdentityKey(const char * aCreatorIdentityKey); \
  nsresult GetBody(nsAString& aBody); \
  nsresult SetBody(const nsAString& aBody); \
  nsresult GetAttachments(nsISimpleEnumerator **aAttachments); \
  nsresult AddAttachment(nsIMsgAttachment *attachment); \
  nsresult RemoveAttachment(nsIMsgAttachment *attachment); \
  nsresult RemoveAttachments(void); \
  nsresult SplitRecipients(const nsAString& aRecipients, bool aEmailAddressOnly, uint32_t *aLength, char16_t * **aResult); \
  nsresult ConvertBodyToPlainText(void); \
  nsresult GetNeedToCheckCharset(bool *aNeedToCheckCharset); \
  nsresult SetNeedToCheckCharset(bool aNeedToCheckCharset); \
  nsresult GetSecurityInfo(nsISupports **aSecurityInfo); \
  nsresult SetSecurityInfo(nsISupports *aSecurityInfo); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSIMSGCOMPFIELDS(_to) \
  NS_IMETHOD GetFrom(nsAString& aFrom) override { return _to GetFrom(aFrom); } \
  NS_IMETHOD SetFrom(const nsAString& aFrom) override { return _to SetFrom(aFrom); } \
  NS_IMETHOD GetReplyTo(nsAString& aReplyTo) override { return _to GetReplyTo(aReplyTo); } \
  NS_IMETHOD SetReplyTo(const nsAString& aReplyTo) override { return _to SetReplyTo(aReplyTo); } \
  NS_IMETHOD GetTo(nsAString& aTo) override { return _to GetTo(aTo); } \
  NS_IMETHOD SetTo(const nsAString& aTo) override { return _to SetTo(aTo); } \
  NS_IMETHOD GetCc(nsAString& aCc) override { return _to GetCc(aCc); } \
  NS_IMETHOD SetCc(const nsAString& aCc) override { return _to SetCc(aCc); } \
  NS_IMETHOD GetBcc(nsAString& aBcc) override { return _to GetBcc(aBcc); } \
  NS_IMETHOD SetBcc(const nsAString& aBcc) override { return _to SetBcc(aBcc); } \
  NS_IMETHOD GetHasRecipients(bool *aHasRecipients) override { return _to GetHasRecipients(aHasRecipients); } \
  NS_IMETHOD GetFcc(nsAString& aFcc) override { return _to GetFcc(aFcc); } \
  NS_IMETHOD SetFcc(const nsAString& aFcc) override { return _to SetFcc(aFcc); } \
  NS_IMETHOD GetFcc2(nsAString& aFcc2) override { return _to GetFcc2(aFcc2); } \
  NS_IMETHOD SetFcc2(const nsAString& aFcc2) override { return _to SetFcc2(aFcc2); } \
  NS_IMETHOD GetNewsgroups(nsAString& aNewsgroups) override { return _to GetNewsgroups(aNewsgroups); } \
  NS_IMETHOD SetNewsgroups(const nsAString& aNewsgroups) override { return _to SetNewsgroups(aNewsgroups); } \
  NS_IMETHOD GetNewspostUrl(char * *aNewspostUrl) override { return _to GetNewspostUrl(aNewspostUrl); } \
  NS_IMETHOD SetNewspostUrl(const char * aNewspostUrl) override { return _to SetNewspostUrl(aNewspostUrl); } \
  NS_IMETHOD GetFollowupTo(nsAString& aFollowupTo) override { return _to GetFollowupTo(aFollowupTo); } \
  NS_IMETHOD SetFollowupTo(const nsAString& aFollowupTo) override { return _to SetFollowupTo(aFollowupTo); } \
  NS_IMETHOD GetSubject(nsAString& aSubject) override { return _to GetSubject(aSubject); } \
  NS_IMETHOD SetSubject(const nsAString& aSubject) override { return _to SetSubject(aSubject); } \
  NS_IMETHOD GetOrganization(nsAString& aOrganization) override { return _to GetOrganization(aOrganization); } \
  NS_IMETHOD SetOrganization(const nsAString& aOrganization) override { return _to SetOrganization(aOrganization); } \
  NS_IMETHOD GetReferences(char * *aReferences) override { return _to GetReferences(aReferences); } \
  NS_IMETHOD SetReferences(const char * aReferences) override { return _to SetReferences(aReferences); } \
  NS_IMETHOD GetPriority(char * *aPriority) override { return _to GetPriority(aPriority); } \
  NS_IMETHOD SetPriority(const char * aPriority) override { return _to SetPriority(aPriority); } \
  NS_IMETHOD GetMessageId(char * *aMessageId) override { return _to GetMessageId(aMessageId); } \
  NS_IMETHOD SetMessageId(const char * aMessageId) override { return _to SetMessageId(aMessageId); } \
  NS_IMETHOD GetCharacterSet(char * *aCharacterSet) override { return _to GetCharacterSet(aCharacterSet); } \
  NS_IMETHOD SetCharacterSet(const char * aCharacterSet) override { return _to SetCharacterSet(aCharacterSet); } \
  NS_IMETHOD GetDefaultCharacterSet(char * *aDefaultCharacterSet) override { return _to GetDefaultCharacterSet(aDefaultCharacterSet); } \
  NS_IMETHOD GetTemplateName(nsAString& aTemplateName) override { return _to GetTemplateName(aTemplateName); } \
  NS_IMETHOD SetTemplateName(const nsAString& aTemplateName) override { return _to SetTemplateName(aTemplateName); } \
  NS_IMETHOD GetDraftId(char * *aDraftId) override { return _to GetDraftId(aDraftId); } \
  NS_IMETHOD SetDraftId(const char * aDraftId) override { return _to SetDraftId(aDraftId); } \
  NS_IMETHOD GetReturnReceipt(bool *aReturnReceipt) override { return _to GetReturnReceipt(aReturnReceipt); } \
  NS_IMETHOD SetReturnReceipt(bool aReturnReceipt) override { return _to SetReturnReceipt(aReturnReceipt); } \
  NS_IMETHOD GetReceiptHeaderType(int32_t *aReceiptHeaderType) override { return _to GetReceiptHeaderType(aReceiptHeaderType); } \
  NS_IMETHOD SetReceiptHeaderType(int32_t aReceiptHeaderType) override { return _to SetReceiptHeaderType(aReceiptHeaderType); } \
  NS_IMETHOD GetDSN(bool *aDSN) override { return _to GetDSN(aDSN); } \
  NS_IMETHOD SetDSN(bool aDSN) override { return _to SetDSN(aDSN); } \
  NS_IMETHOD GetAttachVCard(bool *aAttachVCard) override { return _to GetAttachVCard(aAttachVCard); } \
  NS_IMETHOD SetAttachVCard(bool aAttachVCard) override { return _to SetAttachVCard(aAttachVCard); } \
  NS_IMETHOD GetForcePlainText(bool *aForcePlainText) override { return _to GetForcePlainText(aForcePlainText); } \
  NS_IMETHOD SetForcePlainText(bool aForcePlainText) override { return _to SetForcePlainText(aForcePlainText); } \
  NS_IMETHOD GetUseMultipartAlternative(bool *aUseMultipartAlternative) override { return _to GetUseMultipartAlternative(aUseMultipartAlternative); } \
  NS_IMETHOD SetUseMultipartAlternative(bool aUseMultipartAlternative) override { return _to SetUseMultipartAlternative(aUseMultipartAlternative); } \
  NS_IMETHOD GetBodyIsAsciiOnly(bool *aBodyIsAsciiOnly) override { return _to GetBodyIsAsciiOnly(aBodyIsAsciiOnly); } \
  NS_IMETHOD SetBodyIsAsciiOnly(bool aBodyIsAsciiOnly) override { return _to SetBodyIsAsciiOnly(aBodyIsAsciiOnly); } \
  NS_IMETHOD GetForceMsgEncoding(bool *aForceMsgEncoding) override { return _to GetForceMsgEncoding(aForceMsgEncoding); } \
  NS_IMETHOD SetForceMsgEncoding(bool aForceMsgEncoding) override { return _to SetForceMsgEncoding(aForceMsgEncoding); } \
  NS_IMETHOD GetAttachmentReminder(bool *aAttachmentReminder) override { return _to GetAttachmentReminder(aAttachmentReminder); } \
  NS_IMETHOD SetAttachmentReminder(bool aAttachmentReminder) override { return _to SetAttachmentReminder(aAttachmentReminder); } \
  NS_IMETHOD GetDeliveryFormat(int32_t *aDeliveryFormat) override { return _to GetDeliveryFormat(aDeliveryFormat); } \
  NS_IMETHOD SetDeliveryFormat(int32_t aDeliveryFormat) override { return _to SetDeliveryFormat(aDeliveryFormat); } \
  NS_IMETHOD GetContentLanguage(char * *aContentLanguage) override { return _to GetContentLanguage(aContentLanguage); } \
  NS_IMETHOD SetContentLanguage(const char * aContentLanguage) override { return _to SetContentLanguage(aContentLanguage); } \
  NS_IMETHOD GetCreatorIdentityKey(char * *aCreatorIdentityKey) override { return _to GetCreatorIdentityKey(aCreatorIdentityKey); } \
  NS_IMETHOD SetCreatorIdentityKey(const char * aCreatorIdentityKey) override { return _to SetCreatorIdentityKey(aCreatorIdentityKey); } \
  NS_IMETHOD GetBody(nsAString& aBody) override { return _to GetBody(aBody); } \
  NS_IMETHOD SetBody(const nsAString& aBody) override { return _to SetBody(aBody); } \
  NS_IMETHOD GetAttachments(nsISimpleEnumerator **aAttachments) override { return _to GetAttachments(aAttachments); } \
  NS_IMETHOD AddAttachment(nsIMsgAttachment *attachment) override { return _to AddAttachment(attachment); } \
  NS_IMETHOD RemoveAttachment(nsIMsgAttachment *attachment) override { return _to RemoveAttachment(attachment); } \
  NS_IMETHOD RemoveAttachments(void) override { return _to RemoveAttachments(); } \
  NS_IMETHOD SplitRecipients(const nsAString& aRecipients, bool aEmailAddressOnly, uint32_t *aLength, char16_t * **aResult) override { return _to SplitRecipients(aRecipients, aEmailAddressOnly, aLength, aResult); } \
  NS_IMETHOD ConvertBodyToPlainText(void) override { return _to ConvertBodyToPlainText(); } \
  NS_IMETHOD GetNeedToCheckCharset(bool *aNeedToCheckCharset) override { return _to GetNeedToCheckCharset(aNeedToCheckCharset); } \
  NS_IMETHOD SetNeedToCheckCharset(bool aNeedToCheckCharset) override { return _to SetNeedToCheckCharset(aNeedToCheckCharset); } \
  NS_IMETHOD GetSecurityInfo(nsISupports **aSecurityInfo) override { return _to GetSecurityInfo(aSecurityInfo); } \
  NS_IMETHOD SetSecurityInfo(nsISupports *aSecurityInfo) override { return _to SetSecurityInfo(aSecurityInfo); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSIMSGCOMPFIELDS(_to) \
  NS_IMETHOD GetFrom(nsAString& aFrom) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetFrom(aFrom); } \
  NS_IMETHOD SetFrom(const nsAString& aFrom) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetFrom(aFrom); } \
  NS_IMETHOD GetReplyTo(nsAString& aReplyTo) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetReplyTo(aReplyTo); } \
  NS_IMETHOD SetReplyTo(const nsAString& aReplyTo) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetReplyTo(aReplyTo); } \
  NS_IMETHOD GetTo(nsAString& aTo) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetTo(aTo); } \
  NS_IMETHOD SetTo(const nsAString& aTo) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetTo(aTo); } \
  NS_IMETHOD GetCc(nsAString& aCc) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetCc(aCc); } \
  NS_IMETHOD SetCc(const nsAString& aCc) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetCc(aCc); } \
  NS_IMETHOD GetBcc(nsAString& aBcc) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetBcc(aBcc); } \
  NS_IMETHOD SetBcc(const nsAString& aBcc) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetBcc(aBcc); } \
  NS_IMETHOD GetHasRecipients(bool *aHasRecipients) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetHasRecipients(aHasRecipients); } \
  NS_IMETHOD GetFcc(nsAString& aFcc) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetFcc(aFcc); } \
  NS_IMETHOD SetFcc(const nsAString& aFcc) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetFcc(aFcc); } \
  NS_IMETHOD GetFcc2(nsAString& aFcc2) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetFcc2(aFcc2); } \
  NS_IMETHOD SetFcc2(const nsAString& aFcc2) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetFcc2(aFcc2); } \
  NS_IMETHOD GetNewsgroups(nsAString& aNewsgroups) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetNewsgroups(aNewsgroups); } \
  NS_IMETHOD SetNewsgroups(const nsAString& aNewsgroups) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetNewsgroups(aNewsgroups); } \
  NS_IMETHOD GetNewspostUrl(char * *aNewspostUrl) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetNewspostUrl(aNewspostUrl); } \
  NS_IMETHOD SetNewspostUrl(const char * aNewspostUrl) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetNewspostUrl(aNewspostUrl); } \
  NS_IMETHOD GetFollowupTo(nsAString& aFollowupTo) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetFollowupTo(aFollowupTo); } \
  NS_IMETHOD SetFollowupTo(const nsAString& aFollowupTo) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetFollowupTo(aFollowupTo); } \
  NS_IMETHOD GetSubject(nsAString& aSubject) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetSubject(aSubject); } \
  NS_IMETHOD SetSubject(const nsAString& aSubject) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetSubject(aSubject); } \
  NS_IMETHOD GetOrganization(nsAString& aOrganization) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetOrganization(aOrganization); } \
  NS_IMETHOD SetOrganization(const nsAString& aOrganization) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetOrganization(aOrganization); } \
  NS_IMETHOD GetReferences(char * *aReferences) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetReferences(aReferences); } \
  NS_IMETHOD SetReferences(const char * aReferences) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetReferences(aReferences); } \
  NS_IMETHOD GetPriority(char * *aPriority) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetPriority(aPriority); } \
  NS_IMETHOD SetPriority(const char * aPriority) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetPriority(aPriority); } \
  NS_IMETHOD GetMessageId(char * *aMessageId) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetMessageId(aMessageId); } \
  NS_IMETHOD SetMessageId(const char * aMessageId) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetMessageId(aMessageId); } \
  NS_IMETHOD GetCharacterSet(char * *aCharacterSet) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetCharacterSet(aCharacterSet); } \
  NS_IMETHOD SetCharacterSet(const char * aCharacterSet) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetCharacterSet(aCharacterSet); } \
  NS_IMETHOD GetDefaultCharacterSet(char * *aDefaultCharacterSet) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetDefaultCharacterSet(aDefaultCharacterSet); } \
  NS_IMETHOD GetTemplateName(nsAString& aTemplateName) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetTemplateName(aTemplateName); } \
  NS_IMETHOD SetTemplateName(const nsAString& aTemplateName) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetTemplateName(aTemplateName); } \
  NS_IMETHOD GetDraftId(char * *aDraftId) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetDraftId(aDraftId); } \
  NS_IMETHOD SetDraftId(const char * aDraftId) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetDraftId(aDraftId); } \
  NS_IMETHOD GetReturnReceipt(bool *aReturnReceipt) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetReturnReceipt(aReturnReceipt); } \
  NS_IMETHOD SetReturnReceipt(bool aReturnReceipt) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetReturnReceipt(aReturnReceipt); } \
  NS_IMETHOD GetReceiptHeaderType(int32_t *aReceiptHeaderType) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetReceiptHeaderType(aReceiptHeaderType); } \
  NS_IMETHOD SetReceiptHeaderType(int32_t aReceiptHeaderType) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetReceiptHeaderType(aReceiptHeaderType); } \
  NS_IMETHOD GetDSN(bool *aDSN) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetDSN(aDSN); } \
  NS_IMETHOD SetDSN(bool aDSN) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetDSN(aDSN); } \
  NS_IMETHOD GetAttachVCard(bool *aAttachVCard) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAttachVCard(aAttachVCard); } \
  NS_IMETHOD SetAttachVCard(bool aAttachVCard) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetAttachVCard(aAttachVCard); } \
  NS_IMETHOD GetForcePlainText(bool *aForcePlainText) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetForcePlainText(aForcePlainText); } \
  NS_IMETHOD SetForcePlainText(bool aForcePlainText) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetForcePlainText(aForcePlainText); } \
  NS_IMETHOD GetUseMultipartAlternative(bool *aUseMultipartAlternative) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetUseMultipartAlternative(aUseMultipartAlternative); } \
  NS_IMETHOD SetUseMultipartAlternative(bool aUseMultipartAlternative) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetUseMultipartAlternative(aUseMultipartAlternative); } \
  NS_IMETHOD GetBodyIsAsciiOnly(bool *aBodyIsAsciiOnly) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetBodyIsAsciiOnly(aBodyIsAsciiOnly); } \
  NS_IMETHOD SetBodyIsAsciiOnly(bool aBodyIsAsciiOnly) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetBodyIsAsciiOnly(aBodyIsAsciiOnly); } \
  NS_IMETHOD GetForceMsgEncoding(bool *aForceMsgEncoding) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetForceMsgEncoding(aForceMsgEncoding); } \
  NS_IMETHOD SetForceMsgEncoding(bool aForceMsgEncoding) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetForceMsgEncoding(aForceMsgEncoding); } \
  NS_IMETHOD GetAttachmentReminder(bool *aAttachmentReminder) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAttachmentReminder(aAttachmentReminder); } \
  NS_IMETHOD SetAttachmentReminder(bool aAttachmentReminder) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetAttachmentReminder(aAttachmentReminder); } \
  NS_IMETHOD GetDeliveryFormat(int32_t *aDeliveryFormat) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetDeliveryFormat(aDeliveryFormat); } \
  NS_IMETHOD SetDeliveryFormat(int32_t aDeliveryFormat) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetDeliveryFormat(aDeliveryFormat); } \
  NS_IMETHOD GetContentLanguage(char * *aContentLanguage) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetContentLanguage(aContentLanguage); } \
  NS_IMETHOD SetContentLanguage(const char * aContentLanguage) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetContentLanguage(aContentLanguage); } \
  NS_IMETHOD GetCreatorIdentityKey(char * *aCreatorIdentityKey) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetCreatorIdentityKey(aCreatorIdentityKey); } \
  NS_IMETHOD SetCreatorIdentityKey(const char * aCreatorIdentityKey) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetCreatorIdentityKey(aCreatorIdentityKey); } \
  NS_IMETHOD GetBody(nsAString& aBody) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetBody(aBody); } \
  NS_IMETHOD SetBody(const nsAString& aBody) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetBody(aBody); } \
  NS_IMETHOD GetAttachments(nsISimpleEnumerator **aAttachments) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAttachments(aAttachments); } \
  NS_IMETHOD AddAttachment(nsIMsgAttachment *attachment) override { return !_to ? NS_ERROR_NULL_POINTER : _to->AddAttachment(attachment); } \
  NS_IMETHOD RemoveAttachment(nsIMsgAttachment *attachment) override { return !_to ? NS_ERROR_NULL_POINTER : _to->RemoveAttachment(attachment); } \
  NS_IMETHOD RemoveAttachments(void) override { return !_to ? NS_ERROR_NULL_POINTER : _to->RemoveAttachments(); } \
  NS_IMETHOD SplitRecipients(const nsAString& aRecipients, bool aEmailAddressOnly, uint32_t *aLength, char16_t * **aResult) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SplitRecipients(aRecipients, aEmailAddressOnly, aLength, aResult); } \
  NS_IMETHOD ConvertBodyToPlainText(void) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ConvertBodyToPlainText(); } \
  NS_IMETHOD GetNeedToCheckCharset(bool *aNeedToCheckCharset) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetNeedToCheckCharset(aNeedToCheckCharset); } \
  NS_IMETHOD SetNeedToCheckCharset(bool aNeedToCheckCharset) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetNeedToCheckCharset(aNeedToCheckCharset); } \
  NS_IMETHOD GetSecurityInfo(nsISupports **aSecurityInfo) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetSecurityInfo(aSecurityInfo); } \
  NS_IMETHOD SetSecurityInfo(nsISupports *aSecurityInfo) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetSecurityInfo(aSecurityInfo); } 


#endif /* __gen_nsIMsgCompFields_h__ */