LCOV - code coverage report
Current view: directory - objdir/dist/include - nsIVariant.h (source / functions) Found Hit Coverage
Test: app.info Lines: 2 2 100.0 %
Date: 2012-06-02 Functions: 2 2 100.0 %

       1                 : /*
       2                 :  * DO NOT EDIT.  THIS FILE IS GENERATED FROM /builds/slave/m-beta-lnx-codecoverage/build/xpcom/ds/nsIVariant.idl
       3                 :  */
       4                 : 
       5                 : #ifndef __gen_nsIVariant_h__
       6                 : #define __gen_nsIVariant_h__
       7                 : 
       8                 : 
       9                 : #ifndef __gen_nsISupports_h__
      10                 : #include "nsISupports.h"
      11                 : #endif
      12                 : 
      13                 : #include "jspubtd.h"
      14                 : 
      15                 : /* For IDL files that don't want to include root IDL files. */
      16                 : #ifndef NS_NO_VTABLE
      17                 : #define NS_NO_VTABLE
      18                 : #endif
      19                 : 
      20                 : /* starting interface:    nsIDataType */
      21                 : #define NS_IDATATYPE_IID_STR "4d12e540-83d7-11d5-90ed-0010a4e73d9a"
      22                 : 
      23                 : #define NS_IDATATYPE_IID \
      24                 :   {0x4d12e540, 0x83d7, 0x11d5, \
      25                 :     { 0x90, 0xed, 0x00, 0x10, 0xa4, 0xe7, 0x3d, 0x9a }}
      26                 : 
      27                 : class NS_NO_VTABLE NS_SCRIPTABLE nsIDataType : public nsISupports {
      28                 :  public: 
      29                 : 
      30                 :   NS_DECLARE_STATIC_IID_ACCESSOR(NS_IDATATYPE_IID)
      31                 : 
      32                 :   enum {
      33                 :     VTYPE_INT8 = 0U,
      34                 :     VTYPE_INT16 = 1U,
      35                 :     VTYPE_INT32 = 2U,
      36                 :     VTYPE_INT64 = 3U,
      37                 :     VTYPE_UINT8 = 4U,
      38                 :     VTYPE_UINT16 = 5U,
      39                 :     VTYPE_UINT32 = 6U,
      40                 :     VTYPE_UINT64 = 7U,
      41                 :     VTYPE_FLOAT = 8U,
      42                 :     VTYPE_DOUBLE = 9U,
      43                 :     VTYPE_BOOL = 10U,
      44                 :     VTYPE_CHAR = 11U,
      45                 :     VTYPE_WCHAR = 12U,
      46                 :     VTYPE_VOID = 13U,
      47                 :     VTYPE_ID = 14U,
      48                 :     VTYPE_DOMSTRING = 15U,
      49                 :     VTYPE_CHAR_STR = 16U,
      50                 :     VTYPE_WCHAR_STR = 17U,
      51                 :     VTYPE_INTERFACE = 18U,
      52                 :     VTYPE_INTERFACE_IS = 19U,
      53                 :     VTYPE_ARRAY = 20U,
      54                 :     VTYPE_STRING_SIZE_IS = 21U,
      55                 :     VTYPE_WSTRING_SIZE_IS = 22U,
      56                 :     VTYPE_UTF8STRING = 23U,
      57                 :     VTYPE_CSTRING = 24U,
      58                 :     VTYPE_ASTRING = 25U,
      59                 :     VTYPE_EMPTY_ARRAY = 254U,
      60                 :     VTYPE_EMPTY = 255U
      61                 :   };
      62                 : 
      63                 : };
      64                 : 
      65                 :   NS_DEFINE_STATIC_IID_ACCESSOR(nsIDataType, NS_IDATATYPE_IID)
      66                 : 
      67                 : /* Use this macro when declaring classes that implement this interface. */
      68                 : #define NS_DECL_NSIDATATYPE \
      69                 : 
      70                 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
      71                 : #define NS_FORWARD_NSIDATATYPE(_to) \
      72                 : 
      73                 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
      74                 : #define NS_FORWARD_SAFE_NSIDATATYPE(_to) \
      75                 : 
      76                 : #if 0
      77                 : /* Use the code below as a template for the implementation class for this interface. */
      78                 : 
      79                 : /* Header file */
      80                 : class nsDataType : public nsIDataType
      81                 : {
      82                 : public:
      83                 :   NS_DECL_ISUPPORTS
      84                 :   NS_DECL_NSIDATATYPE
      85                 : 
      86                 :   nsDataType();
      87                 : 
      88                 : private:
      89                 :   ~nsDataType();
      90                 : 
      91                 : protected:
      92                 :   /* additional members */
      93                 : };
      94                 : 
      95                 : /* Implementation file */
      96                 : NS_IMPL_ISUPPORTS1(nsDataType, nsIDataType)
      97                 : 
      98                 : nsDataType::nsDataType()
      99                 : {
     100                 :   /* member initializers and constructor code */
     101                 : }
     102                 : 
     103                 : nsDataType::~nsDataType()
     104                 : {
     105                 :   /* destructor code */
     106                 : }
     107                 : 
     108                 : /* End of implementation class template. */
     109                 : #endif
     110                 : 
     111                 : 
     112                 : /* starting interface:    nsIVariant */
     113                 : #define NS_IVARIANT_IID_STR "81e4c2de-acac-4ad6-901a-b5fb1b851a0d"
     114                 : 
     115                 : #define NS_IVARIANT_IID \
     116                 :   {0x81e4c2de, 0xacac, 0x4ad6, \
     117                 :     { 0x90, 0x1a, 0xb5, 0xfb, 0x1b, 0x85, 0x1a, 0x0d }}
     118                 : 
     119          780772 : class NS_NO_VTABLE NS_SCRIPTABLE nsIVariant : public nsISupports {
     120                 :  public: 
     121                 : 
     122                 :   NS_DECLARE_STATIC_IID_ACCESSOR(NS_IVARIANT_IID)
     123                 : 
     124                 :   /* [noscript] readonly attribute PRUint16 dataType; */
     125                 :   NS_IMETHOD GetDataType(PRUint16 *aDataType) = 0;
     126                 : 
     127                 :   /* [noscript] PRUint8 getAsInt8 (); */
     128                 :   NS_IMETHOD GetAsInt8(PRUint8 *_retval NS_OUTPARAM) = 0;
     129                 : 
     130                 :   /* [noscript] PRInt16 getAsInt16 (); */
     131                 :   NS_IMETHOD GetAsInt16(PRInt16 *_retval NS_OUTPARAM) = 0;
     132                 : 
     133                 :   /* [noscript] PRInt32 getAsInt32 (); */
     134                 :   NS_IMETHOD GetAsInt32(PRInt32 *_retval NS_OUTPARAM) = 0;
     135                 : 
     136                 :   /* [noscript] PRInt64 getAsInt64 (); */
     137                 :   NS_IMETHOD GetAsInt64(PRInt64 *_retval NS_OUTPARAM) = 0;
     138                 : 
     139                 :   /* [noscript] PRUint8 getAsUint8 (); */
     140                 :   NS_IMETHOD GetAsUint8(PRUint8 *_retval NS_OUTPARAM) = 0;
     141                 : 
     142                 :   /* [noscript] PRUint16 getAsUint16 (); */
     143                 :   NS_IMETHOD GetAsUint16(PRUint16 *_retval NS_OUTPARAM) = 0;
     144                 : 
     145                 :   /* [noscript] PRUint32 getAsUint32 (); */
     146                 :   NS_IMETHOD GetAsUint32(PRUint32 *_retval NS_OUTPARAM) = 0;
     147                 : 
     148                 :   /* [noscript] PRUint64 getAsUint64 (); */
     149                 :   NS_IMETHOD GetAsUint64(PRUint64 *_retval NS_OUTPARAM) = 0;
     150                 : 
     151                 :   /* [noscript] float getAsFloat (); */
     152                 :   NS_IMETHOD GetAsFloat(float *_retval NS_OUTPARAM) = 0;
     153                 : 
     154                 :   /* [noscript] double getAsDouble (); */
     155                 :   NS_IMETHOD GetAsDouble(double *_retval NS_OUTPARAM) = 0;
     156                 : 
     157                 :   /* [noscript] boolean getAsBool (); */
     158                 :   NS_IMETHOD GetAsBool(bool *_retval NS_OUTPARAM) = 0;
     159                 : 
     160                 :   /* [noscript] char getAsChar (); */
     161                 :   NS_IMETHOD GetAsChar(char *_retval NS_OUTPARAM) = 0;
     162                 : 
     163                 :   /* [noscript] wchar getAsWChar (); */
     164                 :   NS_IMETHOD GetAsWChar(PRUnichar *_retval NS_OUTPARAM) = 0;
     165                 : 
     166                 :   /* [notxpcom] nsresult getAsID (out nsID retval); */
     167                 :   NS_IMETHOD_(nsresult) GetAsID(nsID *retval NS_OUTPARAM) = 0;
     168                 : 
     169                 :   /* [noscript] AString getAsAString (); */
     170                 :   NS_IMETHOD GetAsAString(nsAString & _retval NS_OUTPARAM) = 0;
     171                 : 
     172                 :   /* [noscript] DOMString getAsDOMString (); */
     173                 :   NS_IMETHOD GetAsDOMString(nsAString & _retval NS_OUTPARAM) = 0;
     174                 : 
     175                 :   /* [noscript] ACString getAsACString (); */
     176                 :   NS_IMETHOD GetAsACString(nsACString & _retval NS_OUTPARAM) = 0;
     177                 : 
     178                 :   /* [noscript] AUTF8String getAsAUTF8String (); */
     179                 :   NS_IMETHOD GetAsAUTF8String(nsACString & _retval NS_OUTPARAM) = 0;
     180                 : 
     181                 :   /* [noscript] string getAsString (); */
     182                 :   NS_IMETHOD GetAsString(char * *_retval NS_OUTPARAM) = 0;
     183                 : 
     184                 :   /* [noscript] wstring getAsWString (); */
     185                 :   NS_IMETHOD GetAsWString(PRUnichar * *_retval NS_OUTPARAM) = 0;
     186                 : 
     187                 :   /* [noscript] nsISupports getAsISupports (); */
     188                 :   NS_IMETHOD GetAsISupports(nsISupports * *_retval NS_OUTPARAM) = 0;
     189                 : 
     190                 :   /* [noscript] jsval getAsJSVal (); */
     191                 :   NS_IMETHOD GetAsJSVal(JS::Value *_retval NS_OUTPARAM) = 0;
     192                 : 
     193                 :   /* [noscript] void getAsInterface (out nsIIDPtr iid, [iid_is (iid), retval] out nsQIResult iface); */
     194                 :   NS_IMETHOD GetAsInterface(nsIID **iid NS_OUTPARAM, void **iface NS_OUTPARAM) = 0;
     195                 : 
     196                 :   /* [notxpcom] nsresult getAsArray (out PRUint16 type, out nsIID iid, out PRUint32 count, out voidPtr ptr); */
     197                 :   NS_IMETHOD_(nsresult) GetAsArray(PRUint16 *type NS_OUTPARAM, nsIID *iid NS_OUTPARAM, PRUint32 *count NS_OUTPARAM, void **ptr NS_OUTPARAM) = 0;
     198                 : 
     199                 :   /* [noscript] void getAsStringWithSize (out PRUint32 size, [size_is (size), retval] out string str); */
     200                 :   NS_IMETHOD GetAsStringWithSize(PRUint32 *size NS_OUTPARAM, char * *str NS_OUTPARAM) = 0;
     201                 : 
     202                 :   /* [noscript] void getAsWStringWithSize (out PRUint32 size, [size_is (size), retval] out wstring str); */
     203                 :   NS_IMETHOD GetAsWStringWithSize(PRUint32 *size NS_OUTPARAM, PRUnichar * *str NS_OUTPARAM) = 0;
     204                 : 
     205                 : };
     206                 : 
     207                 :   NS_DEFINE_STATIC_IID_ACCESSOR(nsIVariant, NS_IVARIANT_IID)
     208                 : 
     209                 : /* Use this macro when declaring classes that implement this interface. */
     210                 : #define NS_DECL_NSIVARIANT \
     211                 :   NS_IMETHOD GetDataType(PRUint16 *aDataType); \
     212                 :   NS_IMETHOD GetAsInt8(PRUint8 *_retval NS_OUTPARAM); \
     213                 :   NS_IMETHOD GetAsInt16(PRInt16 *_retval NS_OUTPARAM); \
     214                 :   NS_IMETHOD GetAsInt32(PRInt32 *_retval NS_OUTPARAM); \
     215                 :   NS_IMETHOD GetAsInt64(PRInt64 *_retval NS_OUTPARAM); \
     216                 :   NS_IMETHOD GetAsUint8(PRUint8 *_retval NS_OUTPARAM); \
     217                 :   NS_IMETHOD GetAsUint16(PRUint16 *_retval NS_OUTPARAM); \
     218                 :   NS_IMETHOD GetAsUint32(PRUint32 *_retval NS_OUTPARAM); \
     219                 :   NS_IMETHOD GetAsUint64(PRUint64 *_retval NS_OUTPARAM); \
     220                 :   NS_IMETHOD GetAsFloat(float *_retval NS_OUTPARAM); \
     221                 :   NS_IMETHOD GetAsDouble(double *_retval NS_OUTPARAM); \
     222                 :   NS_IMETHOD GetAsBool(bool *_retval NS_OUTPARAM); \
     223                 :   NS_IMETHOD GetAsChar(char *_retval NS_OUTPARAM); \
     224                 :   NS_IMETHOD GetAsWChar(PRUnichar *_retval NS_OUTPARAM); \
     225                 :   NS_IMETHOD_(nsresult) GetAsID(nsID *retval NS_OUTPARAM); \
     226                 :   NS_IMETHOD GetAsAString(nsAString & _retval NS_OUTPARAM); \
     227                 :   NS_IMETHOD GetAsDOMString(nsAString & _retval NS_OUTPARAM); \
     228                 :   NS_IMETHOD GetAsACString(nsACString & _retval NS_OUTPARAM); \
     229                 :   NS_IMETHOD GetAsAUTF8String(nsACString & _retval NS_OUTPARAM); \
     230                 :   NS_IMETHOD GetAsString(char * *_retval NS_OUTPARAM); \
     231                 :   NS_IMETHOD GetAsWString(PRUnichar * *_retval NS_OUTPARAM); \
     232                 :   NS_IMETHOD GetAsISupports(nsISupports * *_retval NS_OUTPARAM); \
     233                 :   NS_IMETHOD GetAsJSVal(JS::Value *_retval NS_OUTPARAM); \
     234                 :   NS_IMETHOD GetAsInterface(nsIID **iid NS_OUTPARAM, void **iface NS_OUTPARAM); \
     235                 :   NS_IMETHOD_(nsresult) GetAsArray(PRUint16 *type NS_OUTPARAM, nsIID *iid NS_OUTPARAM, PRUint32 *count NS_OUTPARAM, void **ptr NS_OUTPARAM); \
     236                 :   NS_IMETHOD GetAsStringWithSize(PRUint32 *size NS_OUTPARAM, char * *str NS_OUTPARAM); \
     237                 :   NS_IMETHOD GetAsWStringWithSize(PRUint32 *size NS_OUTPARAM, PRUnichar * *str NS_OUTPARAM); 
     238                 : 
     239                 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
     240                 : #define NS_FORWARD_NSIVARIANT(_to) \
     241                 :   NS_IMETHOD GetDataType(PRUint16 *aDataType) { return _to GetDataType(aDataType); } \
     242                 :   NS_IMETHOD GetAsInt8(PRUint8 *_retval NS_OUTPARAM) { return _to GetAsInt8(_retval); } \
     243                 :   NS_IMETHOD GetAsInt16(PRInt16 *_retval NS_OUTPARAM) { return _to GetAsInt16(_retval); } \
     244                 :   NS_IMETHOD GetAsInt32(PRInt32 *_retval NS_OUTPARAM) { return _to GetAsInt32(_retval); } \
     245                 :   NS_IMETHOD GetAsInt64(PRInt64 *_retval NS_OUTPARAM) { return _to GetAsInt64(_retval); } \
     246                 :   NS_IMETHOD GetAsUint8(PRUint8 *_retval NS_OUTPARAM) { return _to GetAsUint8(_retval); } \
     247                 :   NS_IMETHOD GetAsUint16(PRUint16 *_retval NS_OUTPARAM) { return _to GetAsUint16(_retval); } \
     248                 :   NS_IMETHOD GetAsUint32(PRUint32 *_retval NS_OUTPARAM) { return _to GetAsUint32(_retval); } \
     249                 :   NS_IMETHOD GetAsUint64(PRUint64 *_retval NS_OUTPARAM) { return _to GetAsUint64(_retval); } \
     250                 :   NS_IMETHOD GetAsFloat(float *_retval NS_OUTPARAM) { return _to GetAsFloat(_retval); } \
     251                 :   NS_IMETHOD GetAsDouble(double *_retval NS_OUTPARAM) { return _to GetAsDouble(_retval); } \
     252                 :   NS_IMETHOD GetAsBool(bool *_retval NS_OUTPARAM) { return _to GetAsBool(_retval); } \
     253                 :   NS_IMETHOD GetAsChar(char *_retval NS_OUTPARAM) { return _to GetAsChar(_retval); } \
     254                 :   NS_IMETHOD GetAsWChar(PRUnichar *_retval NS_OUTPARAM) { return _to GetAsWChar(_retval); } \
     255                 :   NS_IMETHOD_(nsresult) GetAsID(nsID *retval NS_OUTPARAM) { return _to GetAsID(retval); } \
     256                 :   NS_IMETHOD GetAsAString(nsAString & _retval NS_OUTPARAM) { return _to GetAsAString(_retval); } \
     257                 :   NS_IMETHOD GetAsDOMString(nsAString & _retval NS_OUTPARAM) { return _to GetAsDOMString(_retval); } \
     258                 :   NS_IMETHOD GetAsACString(nsACString & _retval NS_OUTPARAM) { return _to GetAsACString(_retval); } \
     259                 :   NS_IMETHOD GetAsAUTF8String(nsACString & _retval NS_OUTPARAM) { return _to GetAsAUTF8String(_retval); } \
     260                 :   NS_IMETHOD GetAsString(char * *_retval NS_OUTPARAM) { return _to GetAsString(_retval); } \
     261                 :   NS_IMETHOD GetAsWString(PRUnichar * *_retval NS_OUTPARAM) { return _to GetAsWString(_retval); } \
     262                 :   NS_IMETHOD GetAsISupports(nsISupports * *_retval NS_OUTPARAM) { return _to GetAsISupports(_retval); } \
     263                 :   NS_IMETHOD GetAsJSVal(JS::Value *_retval NS_OUTPARAM) { return _to GetAsJSVal(_retval); } \
     264                 :   NS_IMETHOD GetAsInterface(nsIID **iid NS_OUTPARAM, void **iface NS_OUTPARAM) { return _to GetAsInterface(iid, iface); } \
     265                 :   NS_IMETHOD_(nsresult) GetAsArray(PRUint16 *type NS_OUTPARAM, nsIID *iid NS_OUTPARAM, PRUint32 *count NS_OUTPARAM, void **ptr NS_OUTPARAM) { return _to GetAsArray(type, iid, count, ptr); } \
     266                 :   NS_IMETHOD GetAsStringWithSize(PRUint32 *size NS_OUTPARAM, char * *str NS_OUTPARAM) { return _to GetAsStringWithSize(size, str); } \
     267                 :   NS_IMETHOD GetAsWStringWithSize(PRUint32 *size NS_OUTPARAM, PRUnichar * *str NS_OUTPARAM) { return _to GetAsWStringWithSize(size, str); } 
     268                 : 
     269                 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
     270                 : #define NS_FORWARD_SAFE_NSIVARIANT(_to) \
     271                 :   NS_IMETHOD GetDataType(PRUint16 *aDataType) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetDataType(aDataType); } \
     272                 :   NS_IMETHOD GetAsInt8(PRUint8 *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAsInt8(_retval); } \
     273                 :   NS_IMETHOD GetAsInt16(PRInt16 *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAsInt16(_retval); } \
     274                 :   NS_IMETHOD GetAsInt32(PRInt32 *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAsInt32(_retval); } \
     275                 :   NS_IMETHOD GetAsInt64(PRInt64 *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAsInt64(_retval); } \
     276                 :   NS_IMETHOD GetAsUint8(PRUint8 *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAsUint8(_retval); } \
     277                 :   NS_IMETHOD GetAsUint16(PRUint16 *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAsUint16(_retval); } \
     278                 :   NS_IMETHOD GetAsUint32(PRUint32 *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAsUint32(_retval); } \
     279                 :   NS_IMETHOD GetAsUint64(PRUint64 *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAsUint64(_retval); } \
     280                 :   NS_IMETHOD GetAsFloat(float *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAsFloat(_retval); } \
     281                 :   NS_IMETHOD GetAsDouble(double *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAsDouble(_retval); } \
     282                 :   NS_IMETHOD GetAsBool(bool *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAsBool(_retval); } \
     283                 :   NS_IMETHOD GetAsChar(char *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAsChar(_retval); } \
     284                 :   NS_IMETHOD GetAsWChar(PRUnichar *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAsWChar(_retval); } \
     285                 :   NS_IMETHOD_(nsresult) GetAsID(nsID *retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAsID(retval); } \
     286                 :   NS_IMETHOD GetAsAString(nsAString & _retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAsAString(_retval); } \
     287                 :   NS_IMETHOD GetAsDOMString(nsAString & _retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAsDOMString(_retval); } \
     288                 :   NS_IMETHOD GetAsACString(nsACString & _retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAsACString(_retval); } \
     289                 :   NS_IMETHOD GetAsAUTF8String(nsACString & _retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAsAUTF8String(_retval); } \
     290                 :   NS_IMETHOD GetAsString(char * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAsString(_retval); } \
     291                 :   NS_IMETHOD GetAsWString(PRUnichar * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAsWString(_retval); } \
     292                 :   NS_IMETHOD GetAsISupports(nsISupports * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAsISupports(_retval); } \
     293                 :   NS_IMETHOD GetAsJSVal(JS::Value *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAsJSVal(_retval); } \
     294                 :   NS_IMETHOD GetAsInterface(nsIID **iid NS_OUTPARAM, void **iface NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAsInterface(iid, iface); } \
     295                 :   NS_IMETHOD_(nsresult) GetAsArray(PRUint16 *type NS_OUTPARAM, nsIID *iid NS_OUTPARAM, PRUint32 *count NS_OUTPARAM, void **ptr NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAsArray(type, iid, count, ptr); } \
     296                 :   NS_IMETHOD GetAsStringWithSize(PRUint32 *size NS_OUTPARAM, char * *str NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAsStringWithSize(size, str); } \
     297                 :   NS_IMETHOD GetAsWStringWithSize(PRUint32 *size NS_OUTPARAM, PRUnichar * *str NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAsWStringWithSize(size, str); } 
     298                 : 
     299                 : #if 0
     300                 : /* Use the code below as a template for the implementation class for this interface. */
     301                 : 
     302                 : /* Header file */
     303                 : class nsVariant : public nsIVariant
     304                 : {
     305                 : public:
     306                 :   NS_DECL_ISUPPORTS
     307                 :   NS_DECL_NSIVARIANT
     308                 : 
     309                 :   nsVariant();
     310                 : 
     311                 : private:
     312                 :   ~nsVariant();
     313                 : 
     314                 : protected:
     315                 :   /* additional members */
     316                 : };
     317                 : 
     318                 : /* Implementation file */
     319                 : NS_IMPL_ISUPPORTS1(nsVariant, nsIVariant)
     320                 : 
     321                 : nsVariant::nsVariant()
     322                 : {
     323                 :   /* member initializers and constructor code */
     324                 : }
     325                 : 
     326                 : nsVariant::~nsVariant()
     327                 : {
     328                 :   /* destructor code */
     329                 : }
     330                 : 
     331                 : /* [noscript] readonly attribute PRUint16 dataType; */
     332                 : NS_IMETHODIMP nsVariant::GetDataType(PRUint16 *aDataType)
     333                 : {
     334                 :     return NS_ERROR_NOT_IMPLEMENTED;
     335                 : }
     336                 : 
     337                 : /* [noscript] PRUint8 getAsInt8 (); */
     338                 : NS_IMETHODIMP nsVariant::GetAsInt8(PRUint8 *_retval NS_OUTPARAM)
     339                 : {
     340                 :     return NS_ERROR_NOT_IMPLEMENTED;
     341                 : }
     342                 : 
     343                 : /* [noscript] PRInt16 getAsInt16 (); */
     344                 : NS_IMETHODIMP nsVariant::GetAsInt16(PRInt16 *_retval NS_OUTPARAM)
     345                 : {
     346                 :     return NS_ERROR_NOT_IMPLEMENTED;
     347                 : }
     348                 : 
     349                 : /* [noscript] PRInt32 getAsInt32 (); */
     350                 : NS_IMETHODIMP nsVariant::GetAsInt32(PRInt32 *_retval NS_OUTPARAM)
     351                 : {
     352                 :     return NS_ERROR_NOT_IMPLEMENTED;
     353                 : }
     354                 : 
     355                 : /* [noscript] PRInt64 getAsInt64 (); */
     356                 : NS_IMETHODIMP nsVariant::GetAsInt64(PRInt64 *_retval NS_OUTPARAM)
     357                 : {
     358                 :     return NS_ERROR_NOT_IMPLEMENTED;
     359                 : }
     360                 : 
     361                 : /* [noscript] PRUint8 getAsUint8 (); */
     362                 : NS_IMETHODIMP nsVariant::GetAsUint8(PRUint8 *_retval NS_OUTPARAM)
     363                 : {
     364                 :     return NS_ERROR_NOT_IMPLEMENTED;
     365                 : }
     366                 : 
     367                 : /* [noscript] PRUint16 getAsUint16 (); */
     368                 : NS_IMETHODIMP nsVariant::GetAsUint16(PRUint16 *_retval NS_OUTPARAM)
     369                 : {
     370                 :     return NS_ERROR_NOT_IMPLEMENTED;
     371                 : }
     372                 : 
     373                 : /* [noscript] PRUint32 getAsUint32 (); */
     374                 : NS_IMETHODIMP nsVariant::GetAsUint32(PRUint32 *_retval NS_OUTPARAM)
     375                 : {
     376                 :     return NS_ERROR_NOT_IMPLEMENTED;
     377                 : }
     378                 : 
     379                 : /* [noscript] PRUint64 getAsUint64 (); */
     380                 : NS_IMETHODIMP nsVariant::GetAsUint64(PRUint64 *_retval NS_OUTPARAM)
     381                 : {
     382                 :     return NS_ERROR_NOT_IMPLEMENTED;
     383                 : }
     384                 : 
     385                 : /* [noscript] float getAsFloat (); */
     386                 : NS_IMETHODIMP nsVariant::GetAsFloat(float *_retval NS_OUTPARAM)
     387                 : {
     388                 :     return NS_ERROR_NOT_IMPLEMENTED;
     389                 : }
     390                 : 
     391                 : /* [noscript] double getAsDouble (); */
     392                 : NS_IMETHODIMP nsVariant::GetAsDouble(double *_retval NS_OUTPARAM)
     393                 : {
     394                 :     return NS_ERROR_NOT_IMPLEMENTED;
     395                 : }
     396                 : 
     397                 : /* [noscript] boolean getAsBool (); */
     398                 : NS_IMETHODIMP nsVariant::GetAsBool(bool *_retval NS_OUTPARAM)
     399                 : {
     400                 :     return NS_ERROR_NOT_IMPLEMENTED;
     401                 : }
     402                 : 
     403                 : /* [noscript] char getAsChar (); */
     404                 : NS_IMETHODIMP nsVariant::GetAsChar(char *_retval NS_OUTPARAM)
     405                 : {
     406                 :     return NS_ERROR_NOT_IMPLEMENTED;
     407                 : }
     408                 : 
     409                 : /* [noscript] wchar getAsWChar (); */
     410                 : NS_IMETHODIMP nsVariant::GetAsWChar(PRUnichar *_retval NS_OUTPARAM)
     411                 : {
     412                 :     return NS_ERROR_NOT_IMPLEMENTED;
     413                 : }
     414                 : 
     415                 : /* [notxpcom] nsresult getAsID (out nsID retval); */
     416                 : NS_IMETHODIMP_(nsresult) nsVariant::GetAsID(nsID *retval NS_OUTPARAM)
     417                 : {
     418                 :     return NS_ERROR_NOT_IMPLEMENTED;
     419                 : }
     420                 : 
     421                 : /* [noscript] AString getAsAString (); */
     422                 : NS_IMETHODIMP nsVariant::GetAsAString(nsAString & _retval NS_OUTPARAM)
     423                 : {
     424                 :     return NS_ERROR_NOT_IMPLEMENTED;
     425                 : }
     426                 : 
     427                 : /* [noscript] DOMString getAsDOMString (); */
     428                 : NS_IMETHODIMP nsVariant::GetAsDOMString(nsAString & _retval NS_OUTPARAM)
     429                 : {
     430                 :     return NS_ERROR_NOT_IMPLEMENTED;
     431                 : }
     432                 : 
     433                 : /* [noscript] ACString getAsACString (); */
     434                 : NS_IMETHODIMP nsVariant::GetAsACString(nsACString & _retval NS_OUTPARAM)
     435                 : {
     436                 :     return NS_ERROR_NOT_IMPLEMENTED;
     437                 : }
     438                 : 
     439                 : /* [noscript] AUTF8String getAsAUTF8String (); */
     440                 : NS_IMETHODIMP nsVariant::GetAsAUTF8String(nsACString & _retval NS_OUTPARAM)
     441                 : {
     442                 :     return NS_ERROR_NOT_IMPLEMENTED;
     443                 : }
     444                 : 
     445                 : /* [noscript] string getAsString (); */
     446                 : NS_IMETHODIMP nsVariant::GetAsString(char * *_retval NS_OUTPARAM)
     447                 : {
     448                 :     return NS_ERROR_NOT_IMPLEMENTED;
     449                 : }
     450                 : 
     451                 : /* [noscript] wstring getAsWString (); */
     452                 : NS_IMETHODIMP nsVariant::GetAsWString(PRUnichar * *_retval NS_OUTPARAM)
     453                 : {
     454                 :     return NS_ERROR_NOT_IMPLEMENTED;
     455                 : }
     456                 : 
     457                 : /* [noscript] nsISupports getAsISupports (); */
     458                 : NS_IMETHODIMP nsVariant::GetAsISupports(nsISupports * *_retval NS_OUTPARAM)
     459                 : {
     460                 :     return NS_ERROR_NOT_IMPLEMENTED;
     461                 : }
     462                 : 
     463                 : /* [noscript] jsval getAsJSVal (); */
     464                 : NS_IMETHODIMP nsVariant::GetAsJSVal(JS::Value *_retval NS_OUTPARAM)
     465                 : {
     466                 :     return NS_ERROR_NOT_IMPLEMENTED;
     467                 : }
     468                 : 
     469                 : /* [noscript] void getAsInterface (out nsIIDPtr iid, [iid_is (iid), retval] out nsQIResult iface); */
     470                 : NS_IMETHODIMP nsVariant::GetAsInterface(nsIID **iid NS_OUTPARAM, void **iface NS_OUTPARAM)
     471                 : {
     472                 :     return NS_ERROR_NOT_IMPLEMENTED;
     473                 : }
     474                 : 
     475                 : /* [notxpcom] nsresult getAsArray (out PRUint16 type, out nsIID iid, out PRUint32 count, out voidPtr ptr); */
     476                 : NS_IMETHODIMP_(nsresult) nsVariant::GetAsArray(PRUint16 *type NS_OUTPARAM, nsIID *iid NS_OUTPARAM, PRUint32 *count NS_OUTPARAM, void **ptr NS_OUTPARAM)
     477                 : {
     478                 :     return NS_ERROR_NOT_IMPLEMENTED;
     479                 : }
     480                 : 
     481                 : /* [noscript] void getAsStringWithSize (out PRUint32 size, [size_is (size), retval] out string str); */
     482                 : NS_IMETHODIMP nsVariant::GetAsStringWithSize(PRUint32 *size NS_OUTPARAM, char * *str NS_OUTPARAM)
     483                 : {
     484                 :     return NS_ERROR_NOT_IMPLEMENTED;
     485                 : }
     486                 : 
     487                 : /* [noscript] void getAsWStringWithSize (out PRUint32 size, [size_is (size), retval] out wstring str); */
     488                 : NS_IMETHODIMP nsVariant::GetAsWStringWithSize(PRUint32 *size NS_OUTPARAM, PRUnichar * *str NS_OUTPARAM)
     489                 : {
     490                 :     return NS_ERROR_NOT_IMPLEMENTED;
     491                 : }
     492                 : 
     493                 : /* End of implementation class template. */
     494                 : #endif
     495                 : 
     496                 : 
     497                 : /* starting interface:    nsIWritableVariant */
     498                 : #define NS_IWRITABLEVARIANT_IID_STR "5586a590-8c82-11d5-90f3-0010a4e73d9a"
     499                 : 
     500                 : #define NS_IWRITABLEVARIANT_IID \
     501                 :   {0x5586a590, 0x8c82, 0x11d5, \
     502                 :     { 0x90, 0xf3, 0x00, 0x10, 0xa4, 0xe7, 0x3d, 0x9a }}
     503                 : 
     504           55916 : class NS_NO_VTABLE NS_SCRIPTABLE nsIWritableVariant : public nsIVariant {
     505                 :  public: 
     506                 : 
     507                 :   NS_DECLARE_STATIC_IID_ACCESSOR(NS_IWRITABLEVARIANT_IID)
     508                 : 
     509                 :   /* attribute boolean writable; */
     510                 :   NS_SCRIPTABLE NS_IMETHOD GetWritable(bool *aWritable) = 0;
     511                 :   NS_SCRIPTABLE NS_IMETHOD SetWritable(bool aWritable) = 0;
     512                 : 
     513                 :   /* void setAsInt8 (in PRUint8 aValue); */
     514                 :   NS_SCRIPTABLE NS_IMETHOD SetAsInt8(PRUint8 aValue) = 0;
     515                 : 
     516                 :   /* void setAsInt16 (in PRInt16 aValue); */
     517                 :   NS_SCRIPTABLE NS_IMETHOD SetAsInt16(PRInt16 aValue) = 0;
     518                 : 
     519                 :   /* void setAsInt32 (in PRInt32 aValue); */
     520                 :   NS_SCRIPTABLE NS_IMETHOD SetAsInt32(PRInt32 aValue) = 0;
     521                 : 
     522                 :   /* void setAsInt64 (in PRInt64 aValue); */
     523                 :   NS_SCRIPTABLE NS_IMETHOD SetAsInt64(PRInt64 aValue) = 0;
     524                 : 
     525                 :   /* void setAsUint8 (in PRUint8 aValue); */
     526                 :   NS_SCRIPTABLE NS_IMETHOD SetAsUint8(PRUint8 aValue) = 0;
     527                 : 
     528                 :   /* void setAsUint16 (in PRUint16 aValue); */
     529                 :   NS_SCRIPTABLE NS_IMETHOD SetAsUint16(PRUint16 aValue) = 0;
     530                 : 
     531                 :   /* void setAsUint32 (in PRUint32 aValue); */
     532                 :   NS_SCRIPTABLE NS_IMETHOD SetAsUint32(PRUint32 aValue) = 0;
     533                 : 
     534                 :   /* void setAsUint64 (in PRUint64 aValue); */
     535                 :   NS_SCRIPTABLE NS_IMETHOD SetAsUint64(PRUint64 aValue) = 0;
     536                 : 
     537                 :   /* void setAsFloat (in float aValue); */
     538                 :   NS_SCRIPTABLE NS_IMETHOD SetAsFloat(float aValue) = 0;
     539                 : 
     540                 :   /* void setAsDouble (in double aValue); */
     541                 :   NS_SCRIPTABLE NS_IMETHOD SetAsDouble(double aValue) = 0;
     542                 : 
     543                 :   /* void setAsBool (in boolean aValue); */
     544                 :   NS_SCRIPTABLE NS_IMETHOD SetAsBool(bool aValue) = 0;
     545                 : 
     546                 :   /* void setAsChar (in char aValue); */
     547                 :   NS_SCRIPTABLE NS_IMETHOD SetAsChar(char aValue) = 0;
     548                 : 
     549                 :   /* void setAsWChar (in wchar aValue); */
     550                 :   NS_SCRIPTABLE NS_IMETHOD SetAsWChar(PRUnichar aValue) = 0;
     551                 : 
     552                 :   /* void setAsID (in nsIDRef aValue); */
     553                 :   NS_SCRIPTABLE NS_IMETHOD SetAsID(const nsID & aValue) = 0;
     554                 : 
     555                 :   /* void setAsAString (in AString aValue); */
     556                 :   NS_SCRIPTABLE NS_IMETHOD SetAsAString(const nsAString & aValue) = 0;
     557                 : 
     558                 :   /* void setAsDOMString (in DOMString aValue); */
     559                 :   NS_SCRIPTABLE NS_IMETHOD SetAsDOMString(const nsAString & aValue) = 0;
     560                 : 
     561                 :   /* void setAsACString (in ACString aValue); */
     562                 :   NS_SCRIPTABLE NS_IMETHOD SetAsACString(const nsACString & aValue) = 0;
     563                 : 
     564                 :   /* void setAsAUTF8String (in AUTF8String aValue); */
     565                 :   NS_SCRIPTABLE NS_IMETHOD SetAsAUTF8String(const nsACString & aValue) = 0;
     566                 : 
     567                 :   /* void setAsString (in string aValue); */
     568                 :   NS_SCRIPTABLE NS_IMETHOD SetAsString(const char * aValue) = 0;
     569                 : 
     570                 :   /* void setAsWString (in wstring aValue); */
     571                 :   NS_SCRIPTABLE NS_IMETHOD SetAsWString(const PRUnichar * aValue) = 0;
     572                 : 
     573                 :   /* void setAsISupports (in nsISupports aValue); */
     574                 :   NS_SCRIPTABLE NS_IMETHOD SetAsISupports(nsISupports *aValue) = 0;
     575                 : 
     576                 :   /* void setAsInterface (in nsIIDRef iid, [iid_is (iid)] in nsQIResult iface); */
     577                 :   NS_SCRIPTABLE NS_IMETHOD SetAsInterface(const nsIID & iid, void *iface) = 0;
     578                 : 
     579                 :   /* [noscript] void setAsArray (in PRUint16 type, in nsIIDPtr iid, in PRUint32 count, in voidPtr ptr); */
     580                 :   NS_IMETHOD SetAsArray(PRUint16 type, const nsIID *iid, PRUint32 count, void *ptr) = 0;
     581                 : 
     582                 :   /* void setAsStringWithSize (in PRUint32 size, [size_is (size)] in string str); */
     583                 :   NS_SCRIPTABLE NS_IMETHOD SetAsStringWithSize(PRUint32 size, const char * str) = 0;
     584                 : 
     585                 :   /* void setAsWStringWithSize (in PRUint32 size, [size_is (size)] in wstring str); */
     586                 :   NS_SCRIPTABLE NS_IMETHOD SetAsWStringWithSize(PRUint32 size, const PRUnichar * str) = 0;
     587                 : 
     588                 :   /* void setAsVoid (); */
     589                 :   NS_SCRIPTABLE NS_IMETHOD SetAsVoid(void) = 0;
     590                 : 
     591                 :   /* void setAsEmpty (); */
     592                 :   NS_SCRIPTABLE NS_IMETHOD SetAsEmpty(void) = 0;
     593                 : 
     594                 :   /* void setAsEmptyArray (); */
     595                 :   NS_SCRIPTABLE NS_IMETHOD SetAsEmptyArray(void) = 0;
     596                 : 
     597                 :   /* void setFromVariant (in nsIVariant aValue); */
     598                 :   NS_SCRIPTABLE NS_IMETHOD SetFromVariant(nsIVariant *aValue) = 0;
     599                 : 
     600                 : };
     601                 : 
     602                 :   NS_DEFINE_STATIC_IID_ACCESSOR(nsIWritableVariant, NS_IWRITABLEVARIANT_IID)
     603                 : 
     604                 : /* Use this macro when declaring classes that implement this interface. */
     605                 : #define NS_DECL_NSIWRITABLEVARIANT \
     606                 :   NS_SCRIPTABLE NS_IMETHOD GetWritable(bool *aWritable); \
     607                 :   NS_SCRIPTABLE NS_IMETHOD SetWritable(bool aWritable); \
     608                 :   NS_SCRIPTABLE NS_IMETHOD SetAsInt8(PRUint8 aValue); \
     609                 :   NS_SCRIPTABLE NS_IMETHOD SetAsInt16(PRInt16 aValue); \
     610                 :   NS_SCRIPTABLE NS_IMETHOD SetAsInt32(PRInt32 aValue); \
     611                 :   NS_SCRIPTABLE NS_IMETHOD SetAsInt64(PRInt64 aValue); \
     612                 :   NS_SCRIPTABLE NS_IMETHOD SetAsUint8(PRUint8 aValue); \
     613                 :   NS_SCRIPTABLE NS_IMETHOD SetAsUint16(PRUint16 aValue); \
     614                 :   NS_SCRIPTABLE NS_IMETHOD SetAsUint32(PRUint32 aValue); \
     615                 :   NS_SCRIPTABLE NS_IMETHOD SetAsUint64(PRUint64 aValue); \
     616                 :   NS_SCRIPTABLE NS_IMETHOD SetAsFloat(float aValue); \
     617                 :   NS_SCRIPTABLE NS_IMETHOD SetAsDouble(double aValue); \
     618                 :   NS_SCRIPTABLE NS_IMETHOD SetAsBool(bool aValue); \
     619                 :   NS_SCRIPTABLE NS_IMETHOD SetAsChar(char aValue); \
     620                 :   NS_SCRIPTABLE NS_IMETHOD SetAsWChar(PRUnichar aValue); \
     621                 :   NS_SCRIPTABLE NS_IMETHOD SetAsID(const nsID & aValue); \
     622                 :   NS_SCRIPTABLE NS_IMETHOD SetAsAString(const nsAString & aValue); \
     623                 :   NS_SCRIPTABLE NS_IMETHOD SetAsDOMString(const nsAString & aValue); \
     624                 :   NS_SCRIPTABLE NS_IMETHOD SetAsACString(const nsACString & aValue); \
     625                 :   NS_SCRIPTABLE NS_IMETHOD SetAsAUTF8String(const nsACString & aValue); \
     626                 :   NS_SCRIPTABLE NS_IMETHOD SetAsString(const char * aValue); \
     627                 :   NS_SCRIPTABLE NS_IMETHOD SetAsWString(const PRUnichar * aValue); \
     628                 :   NS_SCRIPTABLE NS_IMETHOD SetAsISupports(nsISupports *aValue); \
     629                 :   NS_SCRIPTABLE NS_IMETHOD SetAsInterface(const nsIID & iid, void *iface); \
     630                 :   NS_IMETHOD SetAsArray(PRUint16 type, const nsIID *iid, PRUint32 count, void *ptr); \
     631                 :   NS_SCRIPTABLE NS_IMETHOD SetAsStringWithSize(PRUint32 size, const char * str); \
     632                 :   NS_SCRIPTABLE NS_IMETHOD SetAsWStringWithSize(PRUint32 size, const PRUnichar * str); \
     633                 :   NS_SCRIPTABLE NS_IMETHOD SetAsVoid(void); \
     634                 :   NS_SCRIPTABLE NS_IMETHOD SetAsEmpty(void); \
     635                 :   NS_SCRIPTABLE NS_IMETHOD SetAsEmptyArray(void); \
     636                 :   NS_SCRIPTABLE NS_IMETHOD SetFromVariant(nsIVariant *aValue); 
     637                 : 
     638                 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
     639                 : #define NS_FORWARD_NSIWRITABLEVARIANT(_to) \
     640                 :   NS_SCRIPTABLE NS_IMETHOD GetWritable(bool *aWritable) { return _to GetWritable(aWritable); } \
     641                 :   NS_SCRIPTABLE NS_IMETHOD SetWritable(bool aWritable) { return _to SetWritable(aWritable); } \
     642                 :   NS_SCRIPTABLE NS_IMETHOD SetAsInt8(PRUint8 aValue) { return _to SetAsInt8(aValue); } \
     643                 :   NS_SCRIPTABLE NS_IMETHOD SetAsInt16(PRInt16 aValue) { return _to SetAsInt16(aValue); } \
     644                 :   NS_SCRIPTABLE NS_IMETHOD SetAsInt32(PRInt32 aValue) { return _to SetAsInt32(aValue); } \
     645                 :   NS_SCRIPTABLE NS_IMETHOD SetAsInt64(PRInt64 aValue) { return _to SetAsInt64(aValue); } \
     646                 :   NS_SCRIPTABLE NS_IMETHOD SetAsUint8(PRUint8 aValue) { return _to SetAsUint8(aValue); } \
     647                 :   NS_SCRIPTABLE NS_IMETHOD SetAsUint16(PRUint16 aValue) { return _to SetAsUint16(aValue); } \
     648                 :   NS_SCRIPTABLE NS_IMETHOD SetAsUint32(PRUint32 aValue) { return _to SetAsUint32(aValue); } \
     649                 :   NS_SCRIPTABLE NS_IMETHOD SetAsUint64(PRUint64 aValue) { return _to SetAsUint64(aValue); } \
     650                 :   NS_SCRIPTABLE NS_IMETHOD SetAsFloat(float aValue) { return _to SetAsFloat(aValue); } \
     651                 :   NS_SCRIPTABLE NS_IMETHOD SetAsDouble(double aValue) { return _to SetAsDouble(aValue); } \
     652                 :   NS_SCRIPTABLE NS_IMETHOD SetAsBool(bool aValue) { return _to SetAsBool(aValue); } \
     653                 :   NS_SCRIPTABLE NS_IMETHOD SetAsChar(char aValue) { return _to SetAsChar(aValue); } \
     654                 :   NS_SCRIPTABLE NS_IMETHOD SetAsWChar(PRUnichar aValue) { return _to SetAsWChar(aValue); } \
     655                 :   NS_SCRIPTABLE NS_IMETHOD SetAsID(const nsID & aValue) { return _to SetAsID(aValue); } \
     656                 :   NS_SCRIPTABLE NS_IMETHOD SetAsAString(const nsAString & aValue) { return _to SetAsAString(aValue); } \
     657                 :   NS_SCRIPTABLE NS_IMETHOD SetAsDOMString(const nsAString & aValue) { return _to SetAsDOMString(aValue); } \
     658                 :   NS_SCRIPTABLE NS_IMETHOD SetAsACString(const nsACString & aValue) { return _to SetAsACString(aValue); } \
     659                 :   NS_SCRIPTABLE NS_IMETHOD SetAsAUTF8String(const nsACString & aValue) { return _to SetAsAUTF8String(aValue); } \
     660                 :   NS_SCRIPTABLE NS_IMETHOD SetAsString(const char * aValue) { return _to SetAsString(aValue); } \
     661                 :   NS_SCRIPTABLE NS_IMETHOD SetAsWString(const PRUnichar * aValue) { return _to SetAsWString(aValue); } \
     662                 :   NS_SCRIPTABLE NS_IMETHOD SetAsISupports(nsISupports *aValue) { return _to SetAsISupports(aValue); } \
     663                 :   NS_SCRIPTABLE NS_IMETHOD SetAsInterface(const nsIID & iid, void *iface) { return _to SetAsInterface(iid, iface); } \
     664                 :   NS_IMETHOD SetAsArray(PRUint16 type, const nsIID *iid, PRUint32 count, void *ptr) { return _to SetAsArray(type, iid, count, ptr); } \
     665                 :   NS_SCRIPTABLE NS_IMETHOD SetAsStringWithSize(PRUint32 size, const char * str) { return _to SetAsStringWithSize(size, str); } \
     666                 :   NS_SCRIPTABLE NS_IMETHOD SetAsWStringWithSize(PRUint32 size, const PRUnichar * str) { return _to SetAsWStringWithSize(size, str); } \
     667                 :   NS_SCRIPTABLE NS_IMETHOD SetAsVoid(void) { return _to SetAsVoid(); } \
     668                 :   NS_SCRIPTABLE NS_IMETHOD SetAsEmpty(void) { return _to SetAsEmpty(); } \
     669                 :   NS_SCRIPTABLE NS_IMETHOD SetAsEmptyArray(void) { return _to SetAsEmptyArray(); } \
     670                 :   NS_SCRIPTABLE NS_IMETHOD SetFromVariant(nsIVariant *aValue) { return _to SetFromVariant(aValue); } 
     671                 : 
     672                 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
     673                 : #define NS_FORWARD_SAFE_NSIWRITABLEVARIANT(_to) \
     674                 :   NS_SCRIPTABLE NS_IMETHOD GetWritable(bool *aWritable) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetWritable(aWritable); } \
     675                 :   NS_SCRIPTABLE NS_IMETHOD SetWritable(bool aWritable) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetWritable(aWritable); } \
     676                 :   NS_SCRIPTABLE NS_IMETHOD SetAsInt8(PRUint8 aValue) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetAsInt8(aValue); } \
     677                 :   NS_SCRIPTABLE NS_IMETHOD SetAsInt16(PRInt16 aValue) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetAsInt16(aValue); } \
     678                 :   NS_SCRIPTABLE NS_IMETHOD SetAsInt32(PRInt32 aValue) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetAsInt32(aValue); } \
     679                 :   NS_SCRIPTABLE NS_IMETHOD SetAsInt64(PRInt64 aValue) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetAsInt64(aValue); } \
     680                 :   NS_SCRIPTABLE NS_IMETHOD SetAsUint8(PRUint8 aValue) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetAsUint8(aValue); } \
     681                 :   NS_SCRIPTABLE NS_IMETHOD SetAsUint16(PRUint16 aValue) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetAsUint16(aValue); } \
     682                 :   NS_SCRIPTABLE NS_IMETHOD SetAsUint32(PRUint32 aValue) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetAsUint32(aValue); } \
     683                 :   NS_SCRIPTABLE NS_IMETHOD SetAsUint64(PRUint64 aValue) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetAsUint64(aValue); } \
     684                 :   NS_SCRIPTABLE NS_IMETHOD SetAsFloat(float aValue) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetAsFloat(aValue); } \
     685                 :   NS_SCRIPTABLE NS_IMETHOD SetAsDouble(double aValue) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetAsDouble(aValue); } \
     686                 :   NS_SCRIPTABLE NS_IMETHOD SetAsBool(bool aValue) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetAsBool(aValue); } \
     687                 :   NS_SCRIPTABLE NS_IMETHOD SetAsChar(char aValue) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetAsChar(aValue); } \
     688                 :   NS_SCRIPTABLE NS_IMETHOD SetAsWChar(PRUnichar aValue) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetAsWChar(aValue); } \
     689                 :   NS_SCRIPTABLE NS_IMETHOD SetAsID(const nsID & aValue) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetAsID(aValue); } \
     690                 :   NS_SCRIPTABLE NS_IMETHOD SetAsAString(const nsAString & aValue) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetAsAString(aValue); } \
     691                 :   NS_SCRIPTABLE NS_IMETHOD SetAsDOMString(const nsAString & aValue) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetAsDOMString(aValue); } \
     692                 :   NS_SCRIPTABLE NS_IMETHOD SetAsACString(const nsACString & aValue) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetAsACString(aValue); } \
     693                 :   NS_SCRIPTABLE NS_IMETHOD SetAsAUTF8String(const nsACString & aValue) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetAsAUTF8String(aValue); } \
     694                 :   NS_SCRIPTABLE NS_IMETHOD SetAsString(const char * aValue) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetAsString(aValue); } \
     695                 :   NS_SCRIPTABLE NS_IMETHOD SetAsWString(const PRUnichar * aValue) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetAsWString(aValue); } \
     696                 :   NS_SCRIPTABLE NS_IMETHOD SetAsISupports(nsISupports *aValue) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetAsISupports(aValue); } \
     697                 :   NS_SCRIPTABLE NS_IMETHOD SetAsInterface(const nsIID & iid, void *iface) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetAsInterface(iid, iface); } \
     698                 :   NS_IMETHOD SetAsArray(PRUint16 type, const nsIID *iid, PRUint32 count, void *ptr) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetAsArray(type, iid, count, ptr); } \
     699                 :   NS_SCRIPTABLE NS_IMETHOD SetAsStringWithSize(PRUint32 size, const char * str) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetAsStringWithSize(size, str); } \
     700                 :   NS_SCRIPTABLE NS_IMETHOD SetAsWStringWithSize(PRUint32 size, const PRUnichar * str) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetAsWStringWithSize(size, str); } \
     701                 :   NS_SCRIPTABLE NS_IMETHOD SetAsVoid(void) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetAsVoid(); } \
     702                 :   NS_SCRIPTABLE NS_IMETHOD SetAsEmpty(void) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetAsEmpty(); } \
     703                 :   NS_SCRIPTABLE NS_IMETHOD SetAsEmptyArray(void) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetAsEmptyArray(); } \
     704                 :   NS_SCRIPTABLE NS_IMETHOD SetFromVariant(nsIVariant *aValue) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetFromVariant(aValue); } 
     705                 : 
     706                 : #if 0
     707                 : /* Use the code below as a template for the implementation class for this interface. */
     708                 : 
     709                 : /* Header file */
     710                 : class nsWritableVariant : public nsIWritableVariant
     711                 : {
     712                 : public:
     713                 :   NS_DECL_ISUPPORTS
     714                 :   NS_DECL_NSIWRITABLEVARIANT
     715                 : 
     716                 :   nsWritableVariant();
     717                 : 
     718                 : private:
     719                 :   ~nsWritableVariant();
     720                 : 
     721                 : protected:
     722                 :   /* additional members */
     723                 : };
     724                 : 
     725                 : /* Implementation file */
     726                 : NS_IMPL_ISUPPORTS1(nsWritableVariant, nsIWritableVariant)
     727                 : 
     728                 : nsWritableVariant::nsWritableVariant()
     729                 : {
     730                 :   /* member initializers and constructor code */
     731                 : }
     732                 : 
     733                 : nsWritableVariant::~nsWritableVariant()
     734                 : {
     735                 :   /* destructor code */
     736                 : }
     737                 : 
     738                 : /* attribute boolean writable; */
     739                 : NS_IMETHODIMP nsWritableVariant::GetWritable(bool *aWritable)
     740                 : {
     741                 :     return NS_ERROR_NOT_IMPLEMENTED;
     742                 : }
     743                 : NS_IMETHODIMP nsWritableVariant::SetWritable(bool aWritable)
     744                 : {
     745                 :     return NS_ERROR_NOT_IMPLEMENTED;
     746                 : }
     747                 : 
     748                 : /* void setAsInt8 (in PRUint8 aValue); */
     749                 : NS_IMETHODIMP nsWritableVariant::SetAsInt8(PRUint8 aValue)
     750                 : {
     751                 :     return NS_ERROR_NOT_IMPLEMENTED;
     752                 : }
     753                 : 
     754                 : /* void setAsInt16 (in PRInt16 aValue); */
     755                 : NS_IMETHODIMP nsWritableVariant::SetAsInt16(PRInt16 aValue)
     756                 : {
     757                 :     return NS_ERROR_NOT_IMPLEMENTED;
     758                 : }
     759                 : 
     760                 : /* void setAsInt32 (in PRInt32 aValue); */
     761                 : NS_IMETHODIMP nsWritableVariant::SetAsInt32(PRInt32 aValue)
     762                 : {
     763                 :     return NS_ERROR_NOT_IMPLEMENTED;
     764                 : }
     765                 : 
     766                 : /* void setAsInt64 (in PRInt64 aValue); */
     767                 : NS_IMETHODIMP nsWritableVariant::SetAsInt64(PRInt64 aValue)
     768                 : {
     769                 :     return NS_ERROR_NOT_IMPLEMENTED;
     770                 : }
     771                 : 
     772                 : /* void setAsUint8 (in PRUint8 aValue); */
     773                 : NS_IMETHODIMP nsWritableVariant::SetAsUint8(PRUint8 aValue)
     774                 : {
     775                 :     return NS_ERROR_NOT_IMPLEMENTED;
     776                 : }
     777                 : 
     778                 : /* void setAsUint16 (in PRUint16 aValue); */
     779                 : NS_IMETHODIMP nsWritableVariant::SetAsUint16(PRUint16 aValue)
     780                 : {
     781                 :     return NS_ERROR_NOT_IMPLEMENTED;
     782                 : }
     783                 : 
     784                 : /* void setAsUint32 (in PRUint32 aValue); */
     785                 : NS_IMETHODIMP nsWritableVariant::SetAsUint32(PRUint32 aValue)
     786                 : {
     787                 :     return NS_ERROR_NOT_IMPLEMENTED;
     788                 : }
     789                 : 
     790                 : /* void setAsUint64 (in PRUint64 aValue); */
     791                 : NS_IMETHODIMP nsWritableVariant::SetAsUint64(PRUint64 aValue)
     792                 : {
     793                 :     return NS_ERROR_NOT_IMPLEMENTED;
     794                 : }
     795                 : 
     796                 : /* void setAsFloat (in float aValue); */
     797                 : NS_IMETHODIMP nsWritableVariant::SetAsFloat(float aValue)
     798                 : {
     799                 :     return NS_ERROR_NOT_IMPLEMENTED;
     800                 : }
     801                 : 
     802                 : /* void setAsDouble (in double aValue); */
     803                 : NS_IMETHODIMP nsWritableVariant::SetAsDouble(double aValue)
     804                 : {
     805                 :     return NS_ERROR_NOT_IMPLEMENTED;
     806                 : }
     807                 : 
     808                 : /* void setAsBool (in boolean aValue); */
     809                 : NS_IMETHODIMP nsWritableVariant::SetAsBool(bool aValue)
     810                 : {
     811                 :     return NS_ERROR_NOT_IMPLEMENTED;
     812                 : }
     813                 : 
     814                 : /* void setAsChar (in char aValue); */
     815                 : NS_IMETHODIMP nsWritableVariant::SetAsChar(char aValue)
     816                 : {
     817                 :     return NS_ERROR_NOT_IMPLEMENTED;
     818                 : }
     819                 : 
     820                 : /* void setAsWChar (in wchar aValue); */
     821                 : NS_IMETHODIMP nsWritableVariant::SetAsWChar(PRUnichar aValue)
     822                 : {
     823                 :     return NS_ERROR_NOT_IMPLEMENTED;
     824                 : }
     825                 : 
     826                 : /* void setAsID (in nsIDRef aValue); */
     827                 : NS_IMETHODIMP nsWritableVariant::SetAsID(const nsID & aValue)
     828                 : {
     829                 :     return NS_ERROR_NOT_IMPLEMENTED;
     830                 : }
     831                 : 
     832                 : /* void setAsAString (in AString aValue); */
     833                 : NS_IMETHODIMP nsWritableVariant::SetAsAString(const nsAString & aValue)
     834                 : {
     835                 :     return NS_ERROR_NOT_IMPLEMENTED;
     836                 : }
     837                 : 
     838                 : /* void setAsDOMString (in DOMString aValue); */
     839                 : NS_IMETHODIMP nsWritableVariant::SetAsDOMString(const nsAString & aValue)
     840                 : {
     841                 :     return NS_ERROR_NOT_IMPLEMENTED;
     842                 : }
     843                 : 
     844                 : /* void setAsACString (in ACString aValue); */
     845                 : NS_IMETHODIMP nsWritableVariant::SetAsACString(const nsACString & aValue)
     846                 : {
     847                 :     return NS_ERROR_NOT_IMPLEMENTED;
     848                 : }
     849                 : 
     850                 : /* void setAsAUTF8String (in AUTF8String aValue); */
     851                 : NS_IMETHODIMP nsWritableVariant::SetAsAUTF8String(const nsACString & aValue)
     852                 : {
     853                 :     return NS_ERROR_NOT_IMPLEMENTED;
     854                 : }
     855                 : 
     856                 : /* void setAsString (in string aValue); */
     857                 : NS_IMETHODIMP nsWritableVariant::SetAsString(const char * aValue)
     858                 : {
     859                 :     return NS_ERROR_NOT_IMPLEMENTED;
     860                 : }
     861                 : 
     862                 : /* void setAsWString (in wstring aValue); */
     863                 : NS_IMETHODIMP nsWritableVariant::SetAsWString(const PRUnichar * aValue)
     864                 : {
     865                 :     return NS_ERROR_NOT_IMPLEMENTED;
     866                 : }
     867                 : 
     868                 : /* void setAsISupports (in nsISupports aValue); */
     869                 : NS_IMETHODIMP nsWritableVariant::SetAsISupports(nsISupports *aValue)
     870                 : {
     871                 :     return NS_ERROR_NOT_IMPLEMENTED;
     872                 : }
     873                 : 
     874                 : /* void setAsInterface (in nsIIDRef iid, [iid_is (iid)] in nsQIResult iface); */
     875                 : NS_IMETHODIMP nsWritableVariant::SetAsInterface(const nsIID & iid, void *iface)
     876                 : {
     877                 :     return NS_ERROR_NOT_IMPLEMENTED;
     878                 : }
     879                 : 
     880                 : /* [noscript] void setAsArray (in PRUint16 type, in nsIIDPtr iid, in PRUint32 count, in voidPtr ptr); */
     881                 : NS_IMETHODIMP nsWritableVariant::SetAsArray(PRUint16 type, const nsIID *iid, PRUint32 count, void *ptr)
     882                 : {
     883                 :     return NS_ERROR_NOT_IMPLEMENTED;
     884                 : }
     885                 : 
     886                 : /* void setAsStringWithSize (in PRUint32 size, [size_is (size)] in string str); */
     887                 : NS_IMETHODIMP nsWritableVariant::SetAsStringWithSize(PRUint32 size, const char * str)
     888                 : {
     889                 :     return NS_ERROR_NOT_IMPLEMENTED;
     890                 : }
     891                 : 
     892                 : /* void setAsWStringWithSize (in PRUint32 size, [size_is (size)] in wstring str); */
     893                 : NS_IMETHODIMP nsWritableVariant::SetAsWStringWithSize(PRUint32 size, const PRUnichar * str)
     894                 : {
     895                 :     return NS_ERROR_NOT_IMPLEMENTED;
     896                 : }
     897                 : 
     898                 : /* void setAsVoid (); */
     899                 : NS_IMETHODIMP nsWritableVariant::SetAsVoid()
     900                 : {
     901                 :     return NS_ERROR_NOT_IMPLEMENTED;
     902                 : }
     903                 : 
     904                 : /* void setAsEmpty (); */
     905                 : NS_IMETHODIMP nsWritableVariant::SetAsEmpty()
     906                 : {
     907                 :     return NS_ERROR_NOT_IMPLEMENTED;
     908                 : }
     909                 : 
     910                 : /* void setAsEmptyArray (); */
     911                 : NS_IMETHODIMP nsWritableVariant::SetAsEmptyArray()
     912                 : {
     913                 :     return NS_ERROR_NOT_IMPLEMENTED;
     914                 : }
     915                 : 
     916                 : /* void setFromVariant (in nsIVariant aValue); */
     917                 : NS_IMETHODIMP nsWritableVariant::SetFromVariant(nsIVariant *aValue)
     918                 : {
     919                 :     return NS_ERROR_NOT_IMPLEMENTED;
     920                 : }
     921                 : 
     922                 : /* End of implementation class template. */
     923                 : #endif
     924                 : 
     925                 : // The contractID for the generic implementation built in to xpcom.
     926                 : #define NS_VARIANT_CONTRACTID "@mozilla.org/variant;1"
     927                 : 
     928                 : #endif /* __gen_nsIVariant_h__ */

Generated by: LCOV version 1.7