/*
 * DO NOT EDIT.  THIS FILE IS GENERATED FROM nsISupportsPrimitives.idl
 */

#ifndef __gen_nsISupportsPrimitives_h__
#define __gen_nsISupportsPrimitives_h__


#ifndef __gen_nsISupports_h__
#include "nsISupports.h"
#endif

/* For IDL files that don't want to include root IDL files. */
#ifndef NS_NO_VTABLE
#define NS_NO_VTABLE
#endif

/* starting interface:    nsISupportsPrimitive */
#define NS_ISUPPORTSPRIMITIVE_IID_STR "d0d4b136-1dd1-11b2-9371-f0727ef827c0"

#define NS_ISUPPORTSPRIMITIVE_IID \
  {0xd0d4b136, 0x1dd1, 0x11b2, \
    { 0x93, 0x71, 0xf0, 0x72, 0x7e, 0xf8, 0x27, 0xc0 }}

/**
 * These first three are pointer types and do data copying
 * using the nsIAllocator. Be careful!
 */
class NS_NO_VTABLE nsISupportsPrimitive : public nsISupports {
 public: 

  NS_DEFINE_STATIC_IID_ACCESSOR(NS_ISUPPORTSPRIMITIVE_IID)

  enum { TYPE_ID = 1U };

  enum { TYPE_STRING = 2U };

  enum { TYPE_WSTRING = 3U };

  enum { TYPE_PRBOOL = 4U };

  enum { TYPE_PRUINT8 = 5U };

  enum { TYPE_PRUINT16 = 6U };

  enum { TYPE_PRUINT32 = 7U };

  enum { TYPE_PRUINT64 = 8U };

  enum { TYPE_PRTIME = 9U };

  enum { TYPE_CHAR = 10U };

  enum { TYPE_PRINT16 = 11U };

  enum { TYPE_PRINT32 = 12U };

  enum { TYPE_PRINT64 = 13U };

  enum { TYPE_FLOAT = 14U };

  enum { TYPE_DOUBLE = 15U };

  enum { TYPE_VOID = 16U };

  enum { TYPE_INTERFACE_POINTER = 17U };

  /* readonly attribute unsigned short type; */
  NS_IMETHOD GetType(PRUint16 *aType) = 0;

};

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSISUPPORTSPRIMITIVE \
  NS_IMETHOD GetType(PRUint16 *aType); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSISUPPORTSPRIMITIVE(_to) \
  NS_IMETHOD GetType(PRUint16 *aType) { return _to GetType(aType); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSISUPPORTSPRIMITIVE(_to) \
  NS_IMETHOD GetType(PRUint16 *aType) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetType(aType); } 

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsSupportsPrimitive : public nsISupportsPrimitive
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSISUPPORTSPRIMITIVE

  nsSupportsPrimitive();
  virtual ~nsSupportsPrimitive();
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(nsSupportsPrimitive, nsISupportsPrimitive)

nsSupportsPrimitive::nsSupportsPrimitive()
{
  NS_INIT_ISUPPORTS();
  /* member initializers and constructor code */
}

nsSupportsPrimitive::~nsSupportsPrimitive()
{
  /* destructor code */
}

/* readonly attribute unsigned short type; */
NS_IMETHODIMP nsSupportsPrimitive::GetType(PRUint16 *aType)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* End of implementation class template. */
#endif


/* starting interface:    nsISupportsID */
#define NS_ISUPPORTSID_IID_STR "d18290a0-4a1c-11d3-9890-006008962422"

#define NS_ISUPPORTSID_IID \
  {0xd18290a0, 0x4a1c, 0x11d3, \
    { 0x98, 0x90, 0x00, 0x60, 0x08, 0x96, 0x24, 0x22 }}

class NS_NO_VTABLE nsISupportsID : public nsISupportsPrimitive {
 public: 

  NS_DEFINE_STATIC_IID_ACCESSOR(NS_ISUPPORTSID_IID)

  /* attribute nsIDPtr data; */
  NS_IMETHOD GetData(nsID * *aData) = 0;
  NS_IMETHOD SetData(const nsID * aData) = 0;

  /* string toString (); */
  NS_IMETHOD ToString(char **_retval) = 0;

};

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSISUPPORTSID \
  NS_IMETHOD GetData(nsID * *aData); \
  NS_IMETHOD SetData(const nsID * aData); \
  NS_IMETHOD ToString(char **_retval); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSISUPPORTSID(_to) \
  NS_IMETHOD GetData(nsID * *aData) { return _to GetData(aData); } \
  NS_IMETHOD SetData(const nsID * aData) { return _to SetData(aData); } \
  NS_IMETHOD ToString(char **_retval) { return _to ToString(_retval); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSISUPPORTSID(_to) \
  NS_IMETHOD GetData(nsID * *aData) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetData(aData); } \
  NS_IMETHOD SetData(const nsID * aData) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetData(aData); } \
  NS_IMETHOD ToString(char **_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->ToString(_retval); } 

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsSupportsID : public nsISupportsID
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSISUPPORTSID

  nsSupportsID();
  virtual ~nsSupportsID();
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(nsSupportsID, nsISupportsID)

nsSupportsID::nsSupportsID()
{
  NS_INIT_ISUPPORTS();
  /* member initializers and constructor code */
}

nsSupportsID::~nsSupportsID()
{
  /* destructor code */
}

/* attribute nsIDPtr data; */
NS_IMETHODIMP nsSupportsID::GetData(nsID * *aData)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsSupportsID::SetData(const nsID * aData)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* string toString (); */
NS_IMETHODIMP nsSupportsID::ToString(char **_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* End of implementation class template. */
#endif


/* starting interface:    nsISupportsString */
#define NS_ISUPPORTSSTRING_IID_STR "d65ff270-4a1c-11d3-9890-006008962422"

#define NS_ISUPPORTSSTRING_IID \
  {0xd65ff270, 0x4a1c, 0x11d3, \
    { 0x98, 0x90, 0x00, 0x60, 0x08, 0x96, 0x24, 0x22 }}

class NS_NO_VTABLE nsISupportsString : public nsISupportsPrimitive {
 public: 

  NS_DEFINE_STATIC_IID_ACCESSOR(NS_ISUPPORTSSTRING_IID)

  /* attribute string data; */
  NS_IMETHOD GetData(char * *aData) = 0;
  NS_IMETHOD SetData(const char * aData) = 0;

  /* string toString (); */
  NS_IMETHOD ToString(char **_retval) = 0;

  /**
     * Note: setting |data| and using |setDataWithLength| make a copy of
     * the data string argument. Using |adoptData| and |adoptDataWithLength|,
     * which are not scriptable, subsumes the data string as the internal
     * buffer.
     *
     * Also note that the |length| param should not include space for a null
     * terminator, nor should it account for the size of a char. It should
     * only be the number of characters for which there is space in the string.
     */
  /* void setDataWithLength (in unsigned long length, [size_is (length)] in string data); */
  NS_IMETHOD SetDataWithLength(PRUint32 length, const char *data) = 0;

  /* [noscript] void adoptData (in charPtr data); */
  NS_IMETHOD AdoptData(char * data) = 0;

  /* [noscript] void adoptDataWithLength (in unsigned long length, [size_is (length)] in charPtr data); */
  NS_IMETHOD AdoptDataWithLength(PRUint32 length, char * data) = 0;

};

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSISUPPORTSSTRING \
  NS_IMETHOD GetData(char * *aData); \
  NS_IMETHOD SetData(const char * aData); \
  NS_IMETHOD ToString(char **_retval); \
  NS_IMETHOD SetDataWithLength(PRUint32 length, const char *data); \
  NS_IMETHOD AdoptData(char * data); \
  NS_IMETHOD AdoptDataWithLength(PRUint32 length, char * data); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSISUPPORTSSTRING(_to) \
  NS_IMETHOD GetData(char * *aData) { return _to GetData(aData); } \
  NS_IMETHOD SetData(const char * aData) { return _to SetData(aData); } \
  NS_IMETHOD ToString(char **_retval) { return _to ToString(_retval); } \
  NS_IMETHOD SetDataWithLength(PRUint32 length, const char *data) { return _to SetDataWithLength(length, data); } \
  NS_IMETHOD AdoptData(char * data) { return _to AdoptData(data); } \
  NS_IMETHOD AdoptDataWithLength(PRUint32 length, char * data) { return _to AdoptDataWithLength(length, data); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSISUPPORTSSTRING(_to) \
  NS_IMETHOD GetData(char * *aData) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetData(aData); } \
  NS_IMETHOD SetData(const char * aData) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetData(aData); } \
  NS_IMETHOD ToString(char **_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->ToString(_retval); } \
  NS_IMETHOD SetDataWithLength(PRUint32 length, const char *data) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetDataWithLength(length, data); } \
  NS_IMETHOD AdoptData(char * data) { return !_to ? NS_ERROR_NULL_POINTER : _to->AdoptData(data); } \
  NS_IMETHOD AdoptDataWithLength(PRUint32 length, char * data) { return !_to ? NS_ERROR_NULL_POINTER : _to->AdoptDataWithLength(length, data); } 

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsSupportsString : public nsISupportsString
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSISUPPORTSSTRING

  nsSupportsString();
  virtual ~nsSupportsString();
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(nsSupportsString, nsISupportsString)

nsSupportsString::nsSupportsString()
{
  NS_INIT_ISUPPORTS();
  /* member initializers and constructor code */
}

nsSupportsString::~nsSupportsString()
{
  /* destructor code */
}

/* attribute string data; */
NS_IMETHODIMP nsSupportsString::GetData(char * *aData)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsSupportsString::SetData(const char * aData)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* string toString (); */
NS_IMETHODIMP nsSupportsString::ToString(char **_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void setDataWithLength (in unsigned long length, [size_is (length)] in string data); */
NS_IMETHODIMP nsSupportsString::SetDataWithLength(PRUint32 length, const char *data)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* [noscript] void adoptData (in charPtr data); */
NS_IMETHODIMP nsSupportsString::AdoptData(char * data)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* [noscript] void adoptDataWithLength (in unsigned long length, [size_is (length)] in charPtr data); */
NS_IMETHODIMP nsSupportsString::AdoptDataWithLength(PRUint32 length, char * data)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* End of implementation class template. */
#endif


/* starting interface:    nsISupportsWString */
#define NS_ISUPPORTSWSTRING_IID_STR "d79dc970-4a1c-11d3-9890-006008962422"

#define NS_ISUPPORTSWSTRING_IID \
  {0xd79dc970, 0x4a1c, 0x11d3, \
    { 0x98, 0x90, 0x00, 0x60, 0x08, 0x96, 0x24, 0x22 }}

class NS_NO_VTABLE nsISupportsWString : public nsISupportsPrimitive {
 public: 

  NS_DEFINE_STATIC_IID_ACCESSOR(NS_ISUPPORTSWSTRING_IID)

  /* attribute wstring data; */
  NS_IMETHOD GetData(PRUnichar * *aData) = 0;
  NS_IMETHOD SetData(const PRUnichar * aData) = 0;

  /* wstring toString (); */
  NS_IMETHOD ToString(PRUnichar **_retval) = 0;

  /**
     * Note: setting |data| and using |setDataWithLength| make a copy of
     * the data string argument. Using |adoptData| and |adoptDataWithLength|,
     * which are not scriptable, subsumes the data string as the internal
     * buffer.
     *
     * Also note that the |length| param should not include space for a null
     * terminator, nor should it account for the size of a char. It should
     * only be the number of characters for which there is space in the string.
     */
  /* void setDataWithLength (in unsigned long length, [size_is (length)] in wstring data); */
  NS_IMETHOD SetDataWithLength(PRUint32 length, const PRUnichar *data) = 0;

  /* [noscript] void adoptData (in unicharPtr data); */
  NS_IMETHOD AdoptData(PRUnichar * data) = 0;

  /* [noscript] void adoptDataWithLength (in unsigned long length, [size_is (length)] in unicharPtr data); */
  NS_IMETHOD AdoptDataWithLength(PRUint32 length, PRUnichar * data) = 0;

};

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSISUPPORTSWSTRING \
  NS_IMETHOD GetData(PRUnichar * *aData); \
  NS_IMETHOD SetData(const PRUnichar * aData); \
  NS_IMETHOD ToString(PRUnichar **_retval); \
  NS_IMETHOD SetDataWithLength(PRUint32 length, const PRUnichar *data); \
  NS_IMETHOD AdoptData(PRUnichar * data); \
  NS_IMETHOD AdoptDataWithLength(PRUint32 length, PRUnichar * data); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSISUPPORTSWSTRING(_to) \
  NS_IMETHOD GetData(PRUnichar * *aData) { return _to GetData(aData); } \
  NS_IMETHOD SetData(const PRUnichar * aData) { return _to SetData(aData); } \
  NS_IMETHOD ToString(PRUnichar **_retval) { return _to ToString(_retval); } \
  NS_IMETHOD SetDataWithLength(PRUint32 length, const PRUnichar *data) { return _to SetDataWithLength(length, data); } \
  NS_IMETHOD AdoptData(PRUnichar * data) { return _to AdoptData(data); } \
  NS_IMETHOD AdoptDataWithLength(PRUint32 length, PRUnichar * data) { return _to AdoptDataWithLength(length, data); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSISUPPORTSWSTRING(_to) \
  NS_IMETHOD GetData(PRUnichar * *aData) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetData(aData); } \
  NS_IMETHOD SetData(const PRUnichar * aData) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetData(aData); } \
  NS_IMETHOD ToString(PRUnichar **_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->ToString(_retval); } \
  NS_IMETHOD SetDataWithLength(PRUint32 length, const PRUnichar *data) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetDataWithLength(length, data); } \
  NS_IMETHOD AdoptData(PRUnichar * data) { return !_to ? NS_ERROR_NULL_POINTER : _to->AdoptData(data); } \
  NS_IMETHOD AdoptDataWithLength(PRUint32 length, PRUnichar * data) { return !_to ? NS_ERROR_NULL_POINTER : _to->AdoptDataWithLength(length, data); } 

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsSupportsWString : public nsISupportsWString
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSISUPPORTSWSTRING

  nsSupportsWString();
  virtual ~nsSupportsWString();
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(nsSupportsWString, nsISupportsWString)

nsSupportsWString::nsSupportsWString()
{
  NS_INIT_ISUPPORTS();
  /* member initializers and constructor code */
}

nsSupportsWString::~nsSupportsWString()
{
  /* destructor code */
}

/* attribute wstring data; */
NS_IMETHODIMP nsSupportsWString::GetData(PRUnichar * *aData)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsSupportsWString::SetData(const PRUnichar * aData)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* wstring toString (); */
NS_IMETHODIMP nsSupportsWString::ToString(PRUnichar **_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void setDataWithLength (in unsigned long length, [size_is (length)] in wstring data); */
NS_IMETHODIMP nsSupportsWString::SetDataWithLength(PRUint32 length, const PRUnichar *data)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* [noscript] void adoptData (in unicharPtr data); */
NS_IMETHODIMP nsSupportsWString::AdoptData(PRUnichar * data)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* [noscript] void adoptDataWithLength (in unsigned long length, [size_is (length)] in unicharPtr data); */
NS_IMETHODIMP nsSupportsWString::AdoptDataWithLength(PRUint32 length, PRUnichar * data)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* End of implementation class template. */
#endif


/* starting interface:    nsISupportsPRBool */
#define NS_ISUPPORTSPRBOOL_IID_STR "ddc3b490-4a1c-11d3-9890-006008962422"

#define NS_ISUPPORTSPRBOOL_IID \
  {0xddc3b490, 0x4a1c, 0x11d3, \
    { 0x98, 0x90, 0x00, 0x60, 0x08, 0x96, 0x24, 0x22 }}

/**
 * The rest are truly primitive and are passed by value
 */
class NS_NO_VTABLE nsISupportsPRBool : public nsISupportsPrimitive {
 public: 

  NS_DEFINE_STATIC_IID_ACCESSOR(NS_ISUPPORTSPRBOOL_IID)

  /* attribute PRBool data; */
  NS_IMETHOD GetData(PRBool *aData) = 0;
  NS_IMETHOD SetData(PRBool aData) = 0;

  /* string toString (); */
  NS_IMETHOD ToString(char **_retval) = 0;

};

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSISUPPORTSPRBOOL \
  NS_IMETHOD GetData(PRBool *aData); \
  NS_IMETHOD SetData(PRBool aData); \
  NS_IMETHOD ToString(char **_retval); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSISUPPORTSPRBOOL(_to) \
  NS_IMETHOD GetData(PRBool *aData) { return _to GetData(aData); } \
  NS_IMETHOD SetData(PRBool aData) { return _to SetData(aData); } \
  NS_IMETHOD ToString(char **_retval) { return _to ToString(_retval); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSISUPPORTSPRBOOL(_to) \
  NS_IMETHOD GetData(PRBool *aData) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetData(aData); } \
  NS_IMETHOD SetData(PRBool aData) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetData(aData); } \
  NS_IMETHOD ToString(char **_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->ToString(_retval); } 

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsSupportsPRBool : public nsISupportsPRBool
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSISUPPORTSPRBOOL

  nsSupportsPRBool();
  virtual ~nsSupportsPRBool();
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(nsSupportsPRBool, nsISupportsPRBool)

nsSupportsPRBool::nsSupportsPRBool()
{
  NS_INIT_ISUPPORTS();
  /* member initializers and constructor code */
}

nsSupportsPRBool::~nsSupportsPRBool()
{
  /* destructor code */
}

/* attribute PRBool data; */
NS_IMETHODIMP nsSupportsPRBool::GetData(PRBool *aData)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsSupportsPRBool::SetData(PRBool aData)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* string toString (); */
NS_IMETHODIMP nsSupportsPRBool::ToString(char **_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* End of implementation class template. */
#endif


/* starting interface:    nsISupportsPRUint8 */
#define NS_ISUPPORTSPRUINT8_IID_STR "dec2e4e0-4a1c-11d3-9890-006008962422"

#define NS_ISUPPORTSPRUINT8_IID \
  {0xdec2e4e0, 0x4a1c, 0x11d3, \
    { 0x98, 0x90, 0x00, 0x60, 0x08, 0x96, 0x24, 0x22 }}

class NS_NO_VTABLE nsISupportsPRUint8 : public nsISupportsPrimitive {
 public: 

  NS_DEFINE_STATIC_IID_ACCESSOR(NS_ISUPPORTSPRUINT8_IID)

  /* attribute PRUint8 data; */
  NS_IMETHOD GetData(PRUint8 *aData) = 0;
  NS_IMETHOD SetData(PRUint8 aData) = 0;

  /* string toString (); */
  NS_IMETHOD ToString(char **_retval) = 0;

};

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSISUPPORTSPRUINT8 \
  NS_IMETHOD GetData(PRUint8 *aData); \
  NS_IMETHOD SetData(PRUint8 aData); \
  NS_IMETHOD ToString(char **_retval); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSISUPPORTSPRUINT8(_to) \
  NS_IMETHOD GetData(PRUint8 *aData) { return _to GetData(aData); } \
  NS_IMETHOD SetData(PRUint8 aData) { return _to SetData(aData); } \
  NS_IMETHOD ToString(char **_retval) { return _to ToString(_retval); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSISUPPORTSPRUINT8(_to) \
  NS_IMETHOD GetData(PRUint8 *aData) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetData(aData); } \
  NS_IMETHOD SetData(PRUint8 aData) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetData(aData); } \
  NS_IMETHOD ToString(char **_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->ToString(_retval); } 

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsSupportsPRUint8 : public nsISupportsPRUint8
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSISUPPORTSPRUINT8

  nsSupportsPRUint8();
  virtual ~nsSupportsPRUint8();
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(nsSupportsPRUint8, nsISupportsPRUint8)

nsSupportsPRUint8::nsSupportsPRUint8()
{
  NS_INIT_ISUPPORTS();
  /* member initializers and constructor code */
}

nsSupportsPRUint8::~nsSupportsPRUint8()
{
  /* destructor code */
}

/* attribute PRUint8 data; */
NS_IMETHODIMP nsSupportsPRUint8::GetData(PRUint8 *aData)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsSupportsPRUint8::SetData(PRUint8 aData)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* string toString (); */
NS_IMETHODIMP nsSupportsPRUint8::ToString(char **_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* End of implementation class template. */
#endif


/* starting interface:    nsISupportsPRUint16 */
#define NS_ISUPPORTSPRUINT16_IID_STR "dfacb090-4a1c-11d3-9890-006008962422"

#define NS_ISUPPORTSPRUINT16_IID \
  {0xdfacb090, 0x4a1c, 0x11d3, \
    { 0x98, 0x90, 0x00, 0x60, 0x08, 0x96, 0x24, 0x22 }}

class NS_NO_VTABLE nsISupportsPRUint16 : public nsISupportsPrimitive {
 public: 

  NS_DEFINE_STATIC_IID_ACCESSOR(NS_ISUPPORTSPRUINT16_IID)

  /* attribute PRUint16 data; */
  NS_IMETHOD GetData(PRUint16 *aData) = 0;
  NS_IMETHOD SetData(PRUint16 aData) = 0;

  /* string toString (); */
  NS_IMETHOD ToString(char **_retval) = 0;

};

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSISUPPORTSPRUINT16 \
  NS_IMETHOD GetData(PRUint16 *aData); \
  NS_IMETHOD SetData(PRUint16 aData); \
  NS_IMETHOD ToString(char **_retval); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSISUPPORTSPRUINT16(_to) \
  NS_IMETHOD GetData(PRUint16 *aData) { return _to GetData(aData); } \
  NS_IMETHOD SetData(PRUint16 aData) { return _to SetData(aData); } \
  NS_IMETHOD ToString(char **_retval) { return _to ToString(_retval); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSISUPPORTSPRUINT16(_to) \
  NS_IMETHOD GetData(PRUint16 *aData) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetData(aData); } \
  NS_IMETHOD SetData(PRUint16 aData) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetData(aData); } \
  NS_IMETHOD ToString(char **_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->ToString(_retval); } 

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsSupportsPRUint16 : public nsISupportsPRUint16
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSISUPPORTSPRUINT16

  nsSupportsPRUint16();
  virtual ~nsSupportsPRUint16();
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(nsSupportsPRUint16, nsISupportsPRUint16)

nsSupportsPRUint16::nsSupportsPRUint16()
{
  NS_INIT_ISUPPORTS();
  /* member initializers and constructor code */
}

nsSupportsPRUint16::~nsSupportsPRUint16()
{
  /* destructor code */
}

/* attribute PRUint16 data; */
NS_IMETHODIMP nsSupportsPRUint16::GetData(PRUint16 *aData)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsSupportsPRUint16::SetData(PRUint16 aData)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* string toString (); */
NS_IMETHODIMP nsSupportsPRUint16::ToString(char **_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* End of implementation class template. */
#endif


/* starting interface:    nsISupportsPRUint32 */
#define NS_ISUPPORTSPRUINT32_IID_STR "e01dc470-4a1c-11d3-9890-006008962422"

#define NS_ISUPPORTSPRUINT32_IID \
  {0xe01dc470, 0x4a1c, 0x11d3, \
    { 0x98, 0x90, 0x00, 0x60, 0x08, 0x96, 0x24, 0x22 }}

class NS_NO_VTABLE nsISupportsPRUint32 : public nsISupportsPrimitive {
 public: 

  NS_DEFINE_STATIC_IID_ACCESSOR(NS_ISUPPORTSPRUINT32_IID)

  /* attribute PRUint32 data; */
  NS_IMETHOD GetData(PRUint32 *aData) = 0;
  NS_IMETHOD SetData(PRUint32 aData) = 0;

  /* string toString (); */
  NS_IMETHOD ToString(char **_retval) = 0;

};

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSISUPPORTSPRUINT32 \
  NS_IMETHOD GetData(PRUint32 *aData); \
  NS_IMETHOD SetData(PRUint32 aData); \
  NS_IMETHOD ToString(char **_retval); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSISUPPORTSPRUINT32(_to) \
  NS_IMETHOD GetData(PRUint32 *aData) { return _to GetData(aData); } \
  NS_IMETHOD SetData(PRUint32 aData) { return _to SetData(aData); } \
  NS_IMETHOD ToString(char **_retval) { return _to ToString(_retval); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSISUPPORTSPRUINT32(_to) \
  NS_IMETHOD GetData(PRUint32 *aData) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetData(aData); } \
  NS_IMETHOD SetData(PRUint32 aData) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetData(aData); } \
  NS_IMETHOD ToString(char **_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->ToString(_retval); } 

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsSupportsPRUint32 : public nsISupportsPRUint32
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSISUPPORTSPRUINT32

  nsSupportsPRUint32();
  virtual ~nsSupportsPRUint32();
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(nsSupportsPRUint32, nsISupportsPRUint32)

nsSupportsPRUint32::nsSupportsPRUint32()
{
  NS_INIT_ISUPPORTS();
  /* member initializers and constructor code */
}

nsSupportsPRUint32::~nsSupportsPRUint32()
{
  /* destructor code */
}

/* attribute PRUint32 data; */
NS_IMETHODIMP nsSupportsPRUint32::GetData(PRUint32 *aData)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsSupportsPRUint32::SetData(PRUint32 aData)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* string toString (); */
NS_IMETHODIMP nsSupportsPRUint32::ToString(char **_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* End of implementation class template. */
#endif


/* starting interface:    nsISupportsPRUint64 */
#define NS_ISUPPORTSPRUINT64_IID_STR "e13567c0-4a1c-11d3-9890-006008962422"

#define NS_ISUPPORTSPRUINT64_IID \
  {0xe13567c0, 0x4a1c, 0x11d3, \
    { 0x98, 0x90, 0x00, 0x60, 0x08, 0x96, 0x24, 0x22 }}

class NS_NO_VTABLE nsISupportsPRUint64 : public nsISupportsPrimitive {
 public: 

  NS_DEFINE_STATIC_IID_ACCESSOR(NS_ISUPPORTSPRUINT64_IID)

  /* attribute PRUint64 data; */
  NS_IMETHOD GetData(PRUint64 *aData) = 0;
  NS_IMETHOD SetData(PRUint64 aData) = 0;

  /* string toString (); */
  NS_IMETHOD ToString(char **_retval) = 0;

};

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSISUPPORTSPRUINT64 \
  NS_IMETHOD GetData(PRUint64 *aData); \
  NS_IMETHOD SetData(PRUint64 aData); \
  NS_IMETHOD ToString(char **_retval); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSISUPPORTSPRUINT64(_to) \
  NS_IMETHOD GetData(PRUint64 *aData) { return _to GetData(aData); } \
  NS_IMETHOD SetData(PRUint64 aData) { return _to SetData(aData); } \
  NS_IMETHOD ToString(char **_retval) { return _to ToString(_retval); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSISUPPORTSPRUINT64(_to) \
  NS_IMETHOD GetData(PRUint64 *aData) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetData(aData); } \
  NS_IMETHOD SetData(PRUint64 aData) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetData(aData); } \
  NS_IMETHOD ToString(char **_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->ToString(_retval); } 

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsSupportsPRUint64 : public nsISupportsPRUint64
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSISUPPORTSPRUINT64

  nsSupportsPRUint64();
  virtual ~nsSupportsPRUint64();
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(nsSupportsPRUint64, nsISupportsPRUint64)

nsSupportsPRUint64::nsSupportsPRUint64()
{
  NS_INIT_ISUPPORTS();
  /* member initializers and constructor code */
}

nsSupportsPRUint64::~nsSupportsPRUint64()
{
  /* destructor code */
}

/* attribute PRUint64 data; */
NS_IMETHODIMP nsSupportsPRUint64::GetData(PRUint64 *aData)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsSupportsPRUint64::SetData(PRUint64 aData)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* string toString (); */
NS_IMETHODIMP nsSupportsPRUint64::ToString(char **_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* End of implementation class template. */
#endif


/* starting interface:    nsISupportsPRTime */
#define NS_ISUPPORTSPRTIME_IID_STR "e2563630-4a1c-11d3-9890-006008962422"

#define NS_ISUPPORTSPRTIME_IID \
  {0xe2563630, 0x4a1c, 0x11d3, \
    { 0x98, 0x90, 0x00, 0x60, 0x08, 0x96, 0x24, 0x22 }}

class NS_NO_VTABLE nsISupportsPRTime : public nsISupportsPrimitive {
 public: 

  NS_DEFINE_STATIC_IID_ACCESSOR(NS_ISUPPORTSPRTIME_IID)

  /* attribute PRTime data; */
  NS_IMETHOD GetData(PRTime *aData) = 0;
  NS_IMETHOD SetData(PRTime aData) = 0;

  /* string toString (); */
  NS_IMETHOD ToString(char **_retval) = 0;

};

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSISUPPORTSPRTIME \
  NS_IMETHOD GetData(PRTime *aData); \
  NS_IMETHOD SetData(PRTime aData); \
  NS_IMETHOD ToString(char **_retval); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSISUPPORTSPRTIME(_to) \
  NS_IMETHOD GetData(PRTime *aData) { return _to GetData(aData); } \
  NS_IMETHOD SetData(PRTime aData) { return _to SetData(aData); } \
  NS_IMETHOD ToString(char **_retval) { return _to ToString(_retval); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSISUPPORTSPRTIME(_to) \
  NS_IMETHOD GetData(PRTime *aData) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetData(aData); } \
  NS_IMETHOD SetData(PRTime aData) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetData(aData); } \
  NS_IMETHOD ToString(char **_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->ToString(_retval); } 

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsSupportsPRTime : public nsISupportsPRTime
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSISUPPORTSPRTIME

  nsSupportsPRTime();
  virtual ~nsSupportsPRTime();
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(nsSupportsPRTime, nsISupportsPRTime)

nsSupportsPRTime::nsSupportsPRTime()
{
  NS_INIT_ISUPPORTS();
  /* member initializers and constructor code */
}

nsSupportsPRTime::~nsSupportsPRTime()
{
  /* destructor code */
}

/* attribute PRTime data; */
NS_IMETHODIMP nsSupportsPRTime::GetData(PRTime *aData)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsSupportsPRTime::SetData(PRTime aData)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* string toString (); */
NS_IMETHODIMP nsSupportsPRTime::ToString(char **_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* End of implementation class template. */
#endif


/* starting interface:    nsISupportsChar */
#define NS_ISUPPORTSCHAR_IID_STR "e2b05e40-4a1c-11d3-9890-006008962422"

#define NS_ISUPPORTSCHAR_IID \
  {0xe2b05e40, 0x4a1c, 0x11d3, \
    { 0x98, 0x90, 0x00, 0x60, 0x08, 0x96, 0x24, 0x22 }}

class NS_NO_VTABLE nsISupportsChar : public nsISupportsPrimitive {
 public: 

  NS_DEFINE_STATIC_IID_ACCESSOR(NS_ISUPPORTSCHAR_IID)

  /* attribute char data; */
  NS_IMETHOD GetData(char *aData) = 0;
  NS_IMETHOD SetData(char aData) = 0;

  /* string toString (); */
  NS_IMETHOD ToString(char **_retval) = 0;

};

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSISUPPORTSCHAR \
  NS_IMETHOD GetData(char *aData); \
  NS_IMETHOD SetData(char aData); \
  NS_IMETHOD ToString(char **_retval); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSISUPPORTSCHAR(_to) \
  NS_IMETHOD GetData(char *aData) { return _to GetData(aData); } \
  NS_IMETHOD SetData(char aData) { return _to SetData(aData); } \
  NS_IMETHOD ToString(char **_retval) { return _to ToString(_retval); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSISUPPORTSCHAR(_to) \
  NS_IMETHOD GetData(char *aData) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetData(aData); } \
  NS_IMETHOD SetData(char aData) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetData(aData); } \
  NS_IMETHOD ToString(char **_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->ToString(_retval); } 

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsSupportsChar : public nsISupportsChar
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSISUPPORTSCHAR

  nsSupportsChar();
  virtual ~nsSupportsChar();
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(nsSupportsChar, nsISupportsChar)

nsSupportsChar::nsSupportsChar()
{
  NS_INIT_ISUPPORTS();
  /* member initializers and constructor code */
}

nsSupportsChar::~nsSupportsChar()
{
  /* destructor code */
}

/* attribute char data; */
NS_IMETHODIMP nsSupportsChar::GetData(char *aData)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsSupportsChar::SetData(char aData)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* string toString (); */
NS_IMETHODIMP nsSupportsChar::ToString(char **_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* End of implementation class template. */
#endif


/* starting interface:    nsISupportsPRInt16 */
#define NS_ISUPPORTSPRINT16_IID_STR "e30d94b0-4a1c-11d3-9890-006008962422"

#define NS_ISUPPORTSPRINT16_IID \
  {0xe30d94b0, 0x4a1c, 0x11d3, \
    { 0x98, 0x90, 0x00, 0x60, 0x08, 0x96, 0x24, 0x22 }}

class NS_NO_VTABLE nsISupportsPRInt16 : public nsISupportsPrimitive {
 public: 

  NS_DEFINE_STATIC_IID_ACCESSOR(NS_ISUPPORTSPRINT16_IID)

  /* attribute PRInt16 data; */
  NS_IMETHOD GetData(PRInt16 *aData) = 0;
  NS_IMETHOD SetData(PRInt16 aData) = 0;

  /* string toString (); */
  NS_IMETHOD ToString(char **_retval) = 0;

};

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSISUPPORTSPRINT16 \
  NS_IMETHOD GetData(PRInt16 *aData); \
  NS_IMETHOD SetData(PRInt16 aData); \
  NS_IMETHOD ToString(char **_retval); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSISUPPORTSPRINT16(_to) \
  NS_IMETHOD GetData(PRInt16 *aData) { return _to GetData(aData); } \
  NS_IMETHOD SetData(PRInt16 aData) { return _to SetData(aData); } \
  NS_IMETHOD ToString(char **_retval) { return _to ToString(_retval); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSISUPPORTSPRINT16(_to) \
  NS_IMETHOD GetData(PRInt16 *aData) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetData(aData); } \
  NS_IMETHOD SetData(PRInt16 aData) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetData(aData); } \
  NS_IMETHOD ToString(char **_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->ToString(_retval); } 

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsSupportsPRInt16 : public nsISupportsPRInt16
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSISUPPORTSPRINT16

  nsSupportsPRInt16();
  virtual ~nsSupportsPRInt16();
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(nsSupportsPRInt16, nsISupportsPRInt16)

nsSupportsPRInt16::nsSupportsPRInt16()
{
  NS_INIT_ISUPPORTS();
  /* member initializers and constructor code */
}

nsSupportsPRInt16::~nsSupportsPRInt16()
{
  /* destructor code */
}

/* attribute PRInt16 data; */
NS_IMETHODIMP nsSupportsPRInt16::GetData(PRInt16 *aData)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsSupportsPRInt16::SetData(PRInt16 aData)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* string toString (); */
NS_IMETHODIMP nsSupportsPRInt16::ToString(char **_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* End of implementation class template. */
#endif


/* starting interface:    nsISupportsPRInt32 */
#define NS_ISUPPORTSPRINT32_IID_STR "e36c5250-4a1c-11d3-9890-006008962422"

#define NS_ISUPPORTSPRINT32_IID \
  {0xe36c5250, 0x4a1c, 0x11d3, \
    { 0x98, 0x90, 0x00, 0x60, 0x08, 0x96, 0x24, 0x22 }}

class NS_NO_VTABLE nsISupportsPRInt32 : public nsISupportsPrimitive {
 public: 

  NS_DEFINE_STATIC_IID_ACCESSOR(NS_ISUPPORTSPRINT32_IID)

  /* attribute PRInt32 data; */
  NS_IMETHOD GetData(PRInt32 *aData) = 0;
  NS_IMETHOD SetData(PRInt32 aData) = 0;

  /* string toString (); */
  NS_IMETHOD ToString(char **_retval) = 0;

};

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSISUPPORTSPRINT32 \
  NS_IMETHOD GetData(PRInt32 *aData); \
  NS_IMETHOD SetData(PRInt32 aData); \
  NS_IMETHOD ToString(char **_retval); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSISUPPORTSPRINT32(_to) \
  NS_IMETHOD GetData(PRInt32 *aData) { return _to GetData(aData); } \
  NS_IMETHOD SetData(PRInt32 aData) { return _to SetData(aData); } \
  NS_IMETHOD ToString(char **_retval) { return _to ToString(_retval); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSISUPPORTSPRINT32(_to) \
  NS_IMETHOD GetData(PRInt32 *aData) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetData(aData); } \
  NS_IMETHOD SetData(PRInt32 aData) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetData(aData); } \
  NS_IMETHOD ToString(char **_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->ToString(_retval); } 

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsSupportsPRInt32 : public nsISupportsPRInt32
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSISUPPORTSPRINT32

  nsSupportsPRInt32();
  virtual ~nsSupportsPRInt32();
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(nsSupportsPRInt32, nsISupportsPRInt32)

nsSupportsPRInt32::nsSupportsPRInt32()
{
  NS_INIT_ISUPPORTS();
  /* member initializers and constructor code */
}

nsSupportsPRInt32::~nsSupportsPRInt32()
{
  /* destructor code */
}

/* attribute PRInt32 data; */
NS_IMETHODIMP nsSupportsPRInt32::GetData(PRInt32 *aData)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsSupportsPRInt32::SetData(PRInt32 aData)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* string toString (); */
NS_IMETHODIMP nsSupportsPRInt32::ToString(char **_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* End of implementation class template. */
#endif


/* starting interface:    nsISupportsPRInt64 */
#define NS_ISUPPORTSPRINT64_IID_STR "e3cb0ff0-4a1c-11d3-9890-006008962422"

#define NS_ISUPPORTSPRINT64_IID \
  {0xe3cb0ff0, 0x4a1c, 0x11d3, \
    { 0x98, 0x90, 0x00, 0x60, 0x08, 0x96, 0x24, 0x22 }}

class NS_NO_VTABLE nsISupportsPRInt64 : public nsISupportsPrimitive {
 public: 

  NS_DEFINE_STATIC_IID_ACCESSOR(NS_ISUPPORTSPRINT64_IID)

  /* attribute PRInt64 data; */
  NS_IMETHOD GetData(PRInt64 *aData) = 0;
  NS_IMETHOD SetData(PRInt64 aData) = 0;

  /* string toString (); */
  NS_IMETHOD ToString(char **_retval) = 0;

};

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSISUPPORTSPRINT64 \
  NS_IMETHOD GetData(PRInt64 *aData); \
  NS_IMETHOD SetData(PRInt64 aData); \
  NS_IMETHOD ToString(char **_retval); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSISUPPORTSPRINT64(_to) \
  NS_IMETHOD GetData(PRInt64 *aData) { return _to GetData(aData); } \
  NS_IMETHOD SetData(PRInt64 aData) { return _to SetData(aData); } \
  NS_IMETHOD ToString(char **_retval) { return _to ToString(_retval); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSISUPPORTSPRINT64(_to) \
  NS_IMETHOD GetData(PRInt64 *aData) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetData(aData); } \
  NS_IMETHOD SetData(PRInt64 aData) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetData(aData); } \
  NS_IMETHOD ToString(char **_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->ToString(_retval); } 

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsSupportsPRInt64 : public nsISupportsPRInt64
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSISUPPORTSPRINT64

  nsSupportsPRInt64();
  virtual ~nsSupportsPRInt64();
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(nsSupportsPRInt64, nsISupportsPRInt64)

nsSupportsPRInt64::nsSupportsPRInt64()
{
  NS_INIT_ISUPPORTS();
  /* member initializers and constructor code */
}

nsSupportsPRInt64::~nsSupportsPRInt64()
{
  /* destructor code */
}

/* attribute PRInt64 data; */
NS_IMETHODIMP nsSupportsPRInt64::GetData(PRInt64 *aData)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsSupportsPRInt64::SetData(PRInt64 aData)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* string toString (); */
NS_IMETHODIMP nsSupportsPRInt64::ToString(char **_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* End of implementation class template. */
#endif


/* starting interface:    nsISupportsFloat */
#define NS_ISUPPORTSFLOAT_IID_STR "abeaa390-4ac0-11d3-baea-00805f8a5dd7"

#define NS_ISUPPORTSFLOAT_IID \
  {0xabeaa390, 0x4ac0, 0x11d3, \
    { 0xba, 0xea, 0x00, 0x80, 0x5f, 0x8a, 0x5d, 0xd7 }}

class NS_NO_VTABLE nsISupportsFloat : public nsISupportsPrimitive {
 public: 

  NS_DEFINE_STATIC_IID_ACCESSOR(NS_ISUPPORTSFLOAT_IID)

  /* attribute float data; */
  NS_IMETHOD GetData(float *aData) = 0;
  NS_IMETHOD SetData(float aData) = 0;

  /* string toString (); */
  NS_IMETHOD ToString(char **_retval) = 0;

};

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSISUPPORTSFLOAT \
  NS_IMETHOD GetData(float *aData); \
  NS_IMETHOD SetData(float aData); \
  NS_IMETHOD ToString(char **_retval); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSISUPPORTSFLOAT(_to) \
  NS_IMETHOD GetData(float *aData) { return _to GetData(aData); } \
  NS_IMETHOD SetData(float aData) { return _to SetData(aData); } \
  NS_IMETHOD ToString(char **_retval) { return _to ToString(_retval); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSISUPPORTSFLOAT(_to) \
  NS_IMETHOD GetData(float *aData) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetData(aData); } \
  NS_IMETHOD SetData(float aData) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetData(aData); } \
  NS_IMETHOD ToString(char **_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->ToString(_retval); } 

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsSupportsFloat : public nsISupportsFloat
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSISUPPORTSFLOAT

  nsSupportsFloat();
  virtual ~nsSupportsFloat();
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(nsSupportsFloat, nsISupportsFloat)

nsSupportsFloat::nsSupportsFloat()
{
  NS_INIT_ISUPPORTS();
  /* member initializers and constructor code */
}

nsSupportsFloat::~nsSupportsFloat()
{
  /* destructor code */
}

/* attribute float data; */
NS_IMETHODIMP nsSupportsFloat::GetData(float *aData)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsSupportsFloat::SetData(float aData)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* string toString (); */
NS_IMETHODIMP nsSupportsFloat::ToString(char **_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* End of implementation class template. */
#endif


/* starting interface:    nsISupportsDouble */
#define NS_ISUPPORTSDOUBLE_IID_STR "b32523a0-4ac0-11d3-baea-00805f8a5dd7"

#define NS_ISUPPORTSDOUBLE_IID \
  {0xb32523a0, 0x4ac0, 0x11d3, \
    { 0xba, 0xea, 0x00, 0x80, 0x5f, 0x8a, 0x5d, 0xd7 }}

class NS_NO_VTABLE nsISupportsDouble : public nsISupportsPrimitive {
 public: 

  NS_DEFINE_STATIC_IID_ACCESSOR(NS_ISUPPORTSDOUBLE_IID)

  /* attribute double data; */
  NS_IMETHOD GetData(double *aData) = 0;
  NS_IMETHOD SetData(double aData) = 0;

  /* string toString (); */
  NS_IMETHOD ToString(char **_retval) = 0;

};

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSISUPPORTSDOUBLE \
  NS_IMETHOD GetData(double *aData); \
  NS_IMETHOD SetData(double aData); \
  NS_IMETHOD ToString(char **_retval); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSISUPPORTSDOUBLE(_to) \
  NS_IMETHOD GetData(double *aData) { return _to GetData(aData); } \
  NS_IMETHOD SetData(double aData) { return _to SetData(aData); } \
  NS_IMETHOD ToString(char **_retval) { return _to ToString(_retval); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSISUPPORTSDOUBLE(_to) \
  NS_IMETHOD GetData(double *aData) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetData(aData); } \
  NS_IMETHOD SetData(double aData) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetData(aData); } \
  NS_IMETHOD ToString(char **_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->ToString(_retval); } 

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsSupportsDouble : public nsISupportsDouble
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSISUPPORTSDOUBLE

  nsSupportsDouble();
  virtual ~nsSupportsDouble();
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(nsSupportsDouble, nsISupportsDouble)

nsSupportsDouble::nsSupportsDouble()
{
  NS_INIT_ISUPPORTS();
  /* member initializers and constructor code */
}

nsSupportsDouble::~nsSupportsDouble()
{
  /* destructor code */
}

/* attribute double data; */
NS_IMETHODIMP nsSupportsDouble::GetData(double *aData)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsSupportsDouble::SetData(double aData)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* string toString (); */
NS_IMETHODIMP nsSupportsDouble::ToString(char **_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* End of implementation class template. */
#endif


/* starting interface:    nsISupportsVoid */
#define NS_ISUPPORTSVOID_IID_STR "464484f0-568d-11d3-baf8-00805f8a5dd7"

#define NS_ISUPPORTSVOID_IID \
  {0x464484f0, 0x568d, 0x11d3, \
    { 0xba, 0xf8, 0x00, 0x80, 0x5f, 0x8a, 0x5d, 0xd7 }}

class NS_NO_VTABLE nsISupportsVoid : public nsISupportsPrimitive {
 public: 

  NS_DEFINE_STATIC_IID_ACCESSOR(NS_ISUPPORTSVOID_IID)

  /* [noscript] void GetData ([shared, retval] out voidPtr aData); */
  NS_IMETHOD GetData(const void * *aData) = 0;

  /* [noscript] void SetData (in voidPtr aData); */
  NS_IMETHOD SetData(void * aData) = 0;

  /* string toString (); */
  NS_IMETHOD ToString(char **_retval) = 0;

};

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSISUPPORTSVOID \
  NS_IMETHOD GetData(const void * *aData); \
  NS_IMETHOD SetData(void * aData); \
  NS_IMETHOD ToString(char **_retval); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSISUPPORTSVOID(_to) \
  NS_IMETHOD GetData(const void * *aData) { return _to GetData(aData); } \
  NS_IMETHOD SetData(void * aData) { return _to SetData(aData); } \
  NS_IMETHOD ToString(char **_retval) { return _to ToString(_retval); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSISUPPORTSVOID(_to) \
  NS_IMETHOD GetData(const void * *aData) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetData(aData); } \
  NS_IMETHOD SetData(void * aData) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetData(aData); } \
  NS_IMETHOD ToString(char **_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->ToString(_retval); } 

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsSupportsVoid : public nsISupportsVoid
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSISUPPORTSVOID

  nsSupportsVoid();
  virtual ~nsSupportsVoid();
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(nsSupportsVoid, nsISupportsVoid)

nsSupportsVoid::nsSupportsVoid()
{
  NS_INIT_ISUPPORTS();
  /* member initializers and constructor code */
}

nsSupportsVoid::~nsSupportsVoid()
{
  /* destructor code */
}

/* [noscript] void GetData ([shared, retval] out voidPtr aData); */
NS_IMETHODIMP nsSupportsVoid::GetData(const void * *aData)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* [noscript] void SetData (in voidPtr aData); */
NS_IMETHODIMP nsSupportsVoid::SetData(void * aData)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* string toString (); */
NS_IMETHODIMP nsSupportsVoid::ToString(char **_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* End of implementation class template. */
#endif


/* starting interface:    nsISupportsInterfacePointer */
#define NS_ISUPPORTSINTERFACEPOINTER_IID_STR "995ea724-1dd1-11b2-9211-c21bdd3e7ed0"

#define NS_ISUPPORTSINTERFACEPOINTER_IID \
  {0x995ea724, 0x1dd1, 0x11b2, \
    { 0x92, 0x11, 0xc2, 0x1b, 0xdd, 0x3e, 0x7e, 0xd0 }}

class NS_NO_VTABLE nsISupportsInterfacePointer : public nsISupportsPrimitive {
 public: 

  NS_DEFINE_STATIC_IID_ACCESSOR(NS_ISUPPORTSINTERFACEPOINTER_IID)

  /* attribute nsISupports data; */
  NS_IMETHOD GetData(nsISupports * *aData) = 0;
  NS_IMETHOD SetData(nsISupports * aData) = 0;

  /* attribute nsIDPtr dataIID; */
  NS_IMETHOD GetDataIID(nsID * *aDataIID) = 0;
  NS_IMETHOD SetDataIID(const nsID * aDataIID) = 0;

  /* string toString (); */
  NS_IMETHOD ToString(char **_retval) = 0;

};

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSISUPPORTSINTERFACEPOINTER \
  NS_IMETHOD GetData(nsISupports * *aData); \
  NS_IMETHOD SetData(nsISupports * aData); \
  NS_IMETHOD GetDataIID(nsID * *aDataIID); \
  NS_IMETHOD SetDataIID(const nsID * aDataIID); \
  NS_IMETHOD ToString(char **_retval); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSISUPPORTSINTERFACEPOINTER(_to) \
  NS_IMETHOD GetData(nsISupports * *aData) { return _to GetData(aData); } \
  NS_IMETHOD SetData(nsISupports * aData) { return _to SetData(aData); } \
  NS_IMETHOD GetDataIID(nsID * *aDataIID) { return _to GetDataIID(aDataIID); } \
  NS_IMETHOD SetDataIID(const nsID * aDataIID) { return _to SetDataIID(aDataIID); } \
  NS_IMETHOD ToString(char **_retval) { return _to ToString(_retval); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSISUPPORTSINTERFACEPOINTER(_to) \
  NS_IMETHOD GetData(nsISupports * *aData) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetData(aData); } \
  NS_IMETHOD SetData(nsISupports * aData) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetData(aData); } \
  NS_IMETHOD GetDataIID(nsID * *aDataIID) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetDataIID(aDataIID); } \
  NS_IMETHOD SetDataIID(const nsID * aDataIID) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetDataIID(aDataIID); } \
  NS_IMETHOD ToString(char **_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->ToString(_retval); } 

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsSupportsInterfacePointer : public nsISupportsInterfacePointer
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSISUPPORTSINTERFACEPOINTER

  nsSupportsInterfacePointer();
  virtual ~nsSupportsInterfacePointer();
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(nsSupportsInterfacePointer, nsISupportsInterfacePointer)

nsSupportsInterfacePointer::nsSupportsInterfacePointer()
{
  NS_INIT_ISUPPORTS();
  /* member initializers and constructor code */
}

nsSupportsInterfacePointer::~nsSupportsInterfacePointer()
{
  /* destructor code */
}

/* attribute nsISupports data; */
NS_IMETHODIMP nsSupportsInterfacePointer::GetData(nsISupports * *aData)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsSupportsInterfacePointer::SetData(nsISupports * aData)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute nsIDPtr dataIID; */
NS_IMETHODIMP nsSupportsInterfacePointer::GetDataIID(nsID * *aDataIID)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsSupportsInterfacePointer::SetDataIID(const nsID * aDataIID)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* string toString (); */
NS_IMETHODIMP nsSupportsInterfacePointer::ToString(char **_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* End of implementation class template. */
#endif

// {ACF8DC40-4A25-11d3-9890-006008962422}
#define NS_SUPPORTS_ID_CID \
{ 0xacf8dc40, 0x4a25, 0x11d3, \
    { 0x98, 0x90, 0x0, 0x60, 0x8, 0x96, 0x24, 0x22 } }
#define NS_SUPPORTS_ID_CONTRACTID "@mozilla.org/supports-id;1"
#define NS_SUPPORTS_ID_CLASSNAME "Supports ID"
// {ACF8DC41-4A25-11d3-9890-006008962422}
#define NS_SUPPORTS_STRING_CID \
{ 0xacf8dc41, 0x4a25, 0x11d3, \
    { 0x98, 0x90, 0x0, 0x60, 0x8, 0x96, 0x24, 0x22 } }
#define NS_SUPPORTS_STRING_CONTRACTID "@mozilla.org/supports-string;1"
#define NS_SUPPORTS_STRING_CLASSNAME "Supports String"
// {ACF8DC42-4A25-11d3-9890-006008962422}
#define NS_SUPPORTS_WSTRING_CID \
{ 0xacf8dc42, 0x4a25, 0x11d3, \
    { 0x98, 0x90, 0x0, 0x60, 0x8, 0x96, 0x24, 0x22 } }
#define NS_SUPPORTS_WSTRING_CONTRACTID "@mozilla.org/supports-wstring;1"
#define NS_SUPPORTS_WSTRING_CLASSNAME "Supports WString"
// {ACF8DC43-4A25-11d3-9890-006008962422}
#define NS_SUPPORTS_PRBOOL_CID \
{ 0xacf8dc43, 0x4a25, 0x11d3, \
    { 0x98, 0x90, 0x0, 0x60, 0x8, 0x96, 0x24, 0x22 } }
#define NS_SUPPORTS_PRBOOL_CONTRACTID "@mozilla.org/supports-PRBool;1"
#define NS_SUPPORTS_PRBOOL_CLASSNAME "Supports PRBool"
// {ACF8DC44-4A25-11d3-9890-006008962422}
#define NS_SUPPORTS_PRUINT8_CID \
{ 0xacf8dc44, 0x4a25, 0x11d3, \
    { 0x98, 0x90, 0x0, 0x60, 0x8, 0x96, 0x24, 0x22 } }
#define NS_SUPPORTS_PRUINT8_CONTRACTID "@mozilla.org/supports-PRUint8;1"
#define NS_SUPPORTS_PRUINT8_CLASSNAME "Supports PRUint8"
// {ACF8DC46-4A25-11d3-9890-006008962422}
#define NS_SUPPORTS_PRUINT16_CID \
{ 0xacf8dc46, 0x4a25, 0x11d3, \
    { 0x98, 0x90, 0x0, 0x60, 0x8, 0x96, 0x24, 0x22 } }
#define NS_SUPPORTS_PRUINT16_CONTRACTID "@mozilla.org/supports-PRUint16;1"
#define NS_SUPPORTS_PRUINT16_CLASSNAME "Supports PRUint16"
// {ACF8DC47-4A25-11d3-9890-006008962422}
#define NS_SUPPORTS_PRUINT32_CID \
{ 0xacf8dc47, 0x4a25, 0x11d3, \
    { 0x98, 0x90, 0x0, 0x60, 0x8, 0x96, 0x24, 0x22 } }
#define NS_SUPPORTS_PRUINT32_CONTRACTID "@mozilla.org/supports-PRUint32;1"
#define NS_SUPPORTS_PRUINT32_CLASSNAME "Supports PRUint32"
// {ACF8DC48-4A25-11d3-9890-006008962422}
#define NS_SUPPORTS_PRUINT64_CID \
{ 0xacf8dc48, 0x4a25, 0x11d3, \
    { 0x98, 0x90, 0x0, 0x60, 0x8, 0x96, 0x24, 0x22 } }
#define NS_SUPPORTS_PRUINT64_CONTRACTID "@mozilla.org/supports-PRUint64;1"
#define NS_SUPPORTS_PRUINT64_CLASSNAME "Supports PRUint64"
// {ACF8DC49-4A25-11d3-9890-006008962422}
#define NS_SUPPORTS_PRTIME_CID \
{ 0xacf8dc49, 0x4a25, 0x11d3, \
    { 0x98, 0x90, 0x0, 0x60, 0x8, 0x96, 0x24, 0x22 } }
#define NS_SUPPORTS_PRTIME_CONTRACTID "@mozilla.org/supports-PRTime;1"
#define NS_SUPPORTS_PRTIME_CLASSNAME "Supports PRTime"
// {ACF8DC4A-4A25-11d3-9890-006008962422}
#define NS_SUPPORTS_CHAR_CID \
{ 0xacf8dc4a, 0x4a25, 0x11d3, \
    { 0x98, 0x90, 0x0, 0x60, 0x8, 0x96, 0x24, 0x22 } }
#define NS_SUPPORTS_CHAR_CONTRACTID "@mozilla.org/supports-char;1"
#define NS_SUPPORTS_CHAR_CLASSNAME "Supports Char"
// {ACF8DC4B-4A25-11d3-9890-006008962422}
#define NS_SUPPORTS_PRINT16_CID \
{ 0xacf8dc4b, 0x4a25, 0x11d3, \
    { 0x98, 0x90, 0x0, 0x60, 0x8, 0x96, 0x24, 0x22 } }
#define NS_SUPPORTS_PRINT16_CONTRACTID "@mozilla.org/supports-PRInt16;1"
#define NS_SUPPORTS_PRINT16_CLASSNAME "Supports PRInt16"
// {ACF8DC4C-4A25-11d3-9890-006008962422}
#define NS_SUPPORTS_PRINT32_CID \
{ 0xacf8dc4c, 0x4a25, 0x11d3, \
    { 0x98, 0x90, 0x0, 0x60, 0x8, 0x96, 0x24, 0x22 } }
#define NS_SUPPORTS_PRINT32_CONTRACTID "@mozilla.org/supports-PRInt32;1"
#define NS_SUPPORTS_PRINT32_CLASSNAME "Supports PRInt32"
// {ACF8DC4D-4A25-11d3-9890-006008962422}
#define NS_SUPPORTS_PRINT64_CID \
{ 0xacf8dc4d, 0x4a25, 0x11d3, \
    { 0x98, 0x90, 0x0, 0x60, 0x8, 0x96, 0x24, 0x22 } }
#define NS_SUPPORTS_PRINT64_CONTRACTID "@mozilla.org/supports-PRInt64;1"
#define NS_SUPPORTS_PRINT64_CLASSNAME "Supports PRInt64"
// {CBF86870-4AC0-11d3-BAEA-00805F8A5DD7}
#define NS_SUPPORTS_FLOAT_CID \
{ 0xcbf86870, 0x4ac0, 0x11d3, \
    { 0xba, 0xea, 0x0, 0x80, 0x5f, 0x8a, 0x5d, 0xd7 } }
#define NS_SUPPORTS_FLOAT_CONTRACTID "@mozilla.org/supports-float;1"
#define NS_SUPPORTS_FLOAT_CLASSNAME "Supports float"
// {CBF86871-4AC0-11d3-BAEA-00805F8A5DD7}
#define NS_SUPPORTS_DOUBLE_CID \
{ 0xcbf86871, 0x4ac0, 0x11d3, \
    { 0xba, 0xea, 0x0, 0x80, 0x5f, 0x8a, 0x5d, 0xd7 } }
#define NS_SUPPORTS_DOUBLE_CONTRACTID "@mozilla.org/supports-double;1"
#define NS_SUPPORTS_DOUBLE_CLASSNAME "Supports double"
// {AF10F3E0-568D-11d3-BAF8-00805F8A5DD7}
#define NS_SUPPORTS_VOID_CID \
{ 0xaf10f3e0, 0x568d, 0x11d3, \
    { 0xba, 0xf8, 0x0, 0x80, 0x5f, 0x8a, 0x5d, 0xd7 } }
#define NS_SUPPORTS_VOID_CONTRACTID "@mozilla.org/supports-void;1"
#define NS_SUPPORTS_VOID_CLASSNAME "Supports void"
// {A99FEBBA-1DD1-11B2-A943-B02334A6D083}
#define NS_SUPPORTS_INTERFACE_POINTER_CID \
{ 0xA99FEBBA, 0x1DD1, 0x11B2, \
    { 0xA9, 0x43, 0xB0, 0x23, 0x34, 0xA6, 0xD0, 0x83 } }
#define NS_SUPPORTS_INTERFACE_POINTER_CONTRACTID \
  "@mozilla.org/supports-interface-pointer;1"
#define NS_SUPPORTS_INTERFACE_POINTER_CLASSNAME "Supports interface pointer"
extern	NS_COM nsresult NS_NewISupportsPRBool (nsISupportsPRBool ** aResult);

#endif /* __gen_nsISupportsPrimitives_h__ */
