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

Untracked file

Line Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111
/*
 * DO NOT EDIT.  THIS FILE IS GENERATED FROM /home/jenkins/src/releases/comm-beta/mozilla/xpcom/components/nsIClassInfo.idl
 */

#ifndef __gen_nsIClassInfo_h__
#define __gen_nsIClassInfo_h__


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

#include "js/GCAnnotations.h"

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


/* starting interface:    nsIClassInfo */
#define NS_ICLASSINFO_IID_STR "a60569d7-d401-4677-ba63-2aa5971af25d"

#define NS_ICLASSINFO_IID \
  {0xa60569d7, 0xd401, 0x4677, \
    { 0xba, 0x63, 0x2a, 0xa5, 0x97, 0x1a, 0xf2, 0x5d }}

class NS_NO_VTABLE nsIClassInfo : public nsISupports {
 public:

  NS_DECLARE_STATIC_IID_ACCESSOR(NS_ICLASSINFO_IID)

  /* void getInterfaces (out uint32_t count, [array, size_is (count), retval] out nsIIDPtr array); */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetInterfaces(uint32_t *count, nsIID * **array) = 0;

  /* nsIXPCScriptable getScriptableHelper (); */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetScriptableHelper(nsIXPCScriptable **_retval) = 0;

  /* readonly attribute AUTF8String contractID; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetContractID(nsACString& aContractID) = 0;

  /* readonly attribute AUTF8String classDescription; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetClassDescription(nsACString& aClassDescription) = 0;

  /* readonly attribute nsCIDPtr classID; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetClassID(nsCID * * aClassID) = 0;

  enum {
    SINGLETON = 1U,
    THREADSAFE = 2U,
    MAIN_THREAD_ONLY = 4U,
    DOM_OBJECT = 8U,
    PLUGIN_OBJECT = 16U,
    SINGLETON_CLASSINFO = 32U,
    RESERVED = 2147483648U
  };

  /* readonly attribute uint32_t flags; */
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetFlags(uint32_t *aFlags) = 0;

  /* [noscript] readonly attribute nsCID classIDNoAlloc; */
  NS_IMETHOD GetClassIDNoAlloc(nsCID * aClassIDNoAlloc) = 0;

};

  NS_DEFINE_STATIC_IID_ACCESSOR(nsIClassInfo, NS_ICLASSINFO_IID)

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSICLASSINFO \
  NS_IMETHOD GetInterfaces(uint32_t *count, nsIID * **array) override; \
  NS_IMETHOD GetScriptableHelper(nsIXPCScriptable **_retval) override; \
  NS_IMETHOD GetContractID(nsACString& aContractID) override; \
  NS_IMETHOD GetClassDescription(nsACString& aClassDescription) override; \
  NS_IMETHOD GetClassID(nsCID * * aClassID) override; \
  NS_IMETHOD GetFlags(uint32_t *aFlags) override; \
  NS_IMETHOD GetClassIDNoAlloc(nsCID * aClassIDNoAlloc) override; 

/* Use this macro when declaring the members of this interface when the
   class doesn't implement the interface. This is useful for forwarding. */
#define NS_DECL_NON_VIRTUAL_NSICLASSINFO \
  nsresult GetInterfaces(uint32_t *count, nsIID * **array); \
  nsresult GetScriptableHelper(nsIXPCScriptable **_retval); \
  nsresult GetContractID(nsACString& aContractID); \
  nsresult GetClassDescription(nsACString& aClassDescription); \
  nsresult GetClassID(nsCID * * aClassID); \
  nsresult GetFlags(uint32_t *aFlags); \
  nsresult GetClassIDNoAlloc(nsCID * aClassIDNoAlloc); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSICLASSINFO(_to) \
  NS_IMETHOD GetInterfaces(uint32_t *count, nsIID * **array) override { return _to GetInterfaces(count, array); } \
  NS_IMETHOD GetScriptableHelper(nsIXPCScriptable **_retval) override { return _to GetScriptableHelper(_retval); } \
  NS_IMETHOD GetContractID(nsACString& aContractID) override { return _to GetContractID(aContractID); } \
  NS_IMETHOD GetClassDescription(nsACString& aClassDescription) override { return _to GetClassDescription(aClassDescription); } \
  NS_IMETHOD GetClassID(nsCID * * aClassID) override { return _to GetClassID(aClassID); } \
  NS_IMETHOD GetFlags(uint32_t *aFlags) override { return _to GetFlags(aFlags); } \
  NS_IMETHOD GetClassIDNoAlloc(nsCID * aClassIDNoAlloc) override { return _to GetClassIDNoAlloc(aClassIDNoAlloc); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSICLASSINFO(_to) \
  NS_IMETHOD GetInterfaces(uint32_t *count, nsIID * **array) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetInterfaces(count, array); } \
  NS_IMETHOD GetScriptableHelper(nsIXPCScriptable **_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetScriptableHelper(_retval); } \
  NS_IMETHOD GetContractID(nsACString& aContractID) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetContractID(aContractID); } \
  NS_IMETHOD GetClassDescription(nsACString& aClassDescription) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetClassDescription(aClassDescription); } \
  NS_IMETHOD GetClassID(nsCID * * aClassID) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetClassID(aClassID); } \
  NS_IMETHOD GetFlags(uint32_t *aFlags) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetFlags(aFlags); } \
  NS_IMETHOD GetClassIDNoAlloc(nsCID * aClassIDNoAlloc) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetClassIDNoAlloc(aClassIDNoAlloc); } 


#endif /* __gen_nsIClassInfo_h__ */