nsIDOMNodeList.h 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. /*
  2. * DO NOT EDIT. THIS FILE IS GENERATED FROM c:/mozilla/dom/public/idl/core/nsIDOMNodeList.idl
  3. */
  4. #ifndef __gen_nsIDOMNodeList_h__
  5. #define __gen_nsIDOMNodeList_h__
  6. #ifndef __gen_domstubs_h__
  7. #include "domstubs.h"
  8. #endif
  9. /* For IDL files that don't want to include root IDL files. */
  10. #ifndef NS_NO_VTABLE
  11. #define NS_NO_VTABLE
  12. #endif
  13. /* starting interface: nsIDOMNodeList */
  14. #define NS_IDOMNODELIST_IID_STR "a6cf907d-15b3-11d2-932e-00805f8add32"
  15. #define NS_IDOMNODELIST_IID \
  16. {0xa6cf907d, 0x15b3, 0x11d2, \
  17. { 0x93, 0x2e, 0x00, 0x80, 0x5f, 0x8a, 0xdd, 0x32 }}
  18. class NS_NO_VTABLE nsIDOMNodeList : public nsISupports {
  19. public:
  20. NS_DEFINE_STATIC_IID_ACCESSOR(NS_IDOMNODELIST_IID)
  21. /**
  22. * The nsIDOMNodeList interface provides the abstraction of an ordered
  23. * collection of nodes, without defining or constraining how this collection
  24. * is implemented.
  25. * The items in the list are accessible via an integral index, starting from 0.
  26. *
  27. * For more information on this interface please see
  28. * http://www.w3.org/TR/DOM-Level-2-Core/
  29. *
  30. * @status FROZEN
  31. */
  32. /* nsIDOMNode item (in unsigned long index); */
  33. NS_IMETHOD Item(PRUint32 index, nsIDOMNode **_retval) = 0;
  34. /* readonly attribute unsigned long length; */
  35. NS_IMETHOD GetLength(PRUint32 *aLength) = 0;
  36. };
  37. /* Use this macro when declaring classes that implement this interface. */
  38. #define NS_DECL_NSIDOMNODELIST \
  39. NS_IMETHOD Item(PRUint32 index, nsIDOMNode **_retval); \
  40. NS_IMETHOD GetLength(PRUint32 *aLength);
  41. /* Use this macro to declare functions that forward the behavior of this interface to another object. */
  42. #define NS_FORWARD_NSIDOMNODELIST(_to) \
  43. NS_IMETHOD Item(PRUint32 index, nsIDOMNode **_retval) { return _to Item(index, _retval); } \
  44. NS_IMETHOD GetLength(PRUint32 *aLength) { return _to GetLength(aLength); }
  45. /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
  46. #define NS_FORWARD_SAFE_NSIDOMNODELIST(_to) \
  47. NS_IMETHOD Item(PRUint32 index, nsIDOMNode **_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->Item(index, _retval); } \
  48. NS_IMETHOD GetLength(PRUint32 *aLength) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetLength(aLength); }
  49. #if 0
  50. /* Use the code below as a template for the implementation class for this interface. */
  51. /* Header file */
  52. class nsDOMNodeList : public nsIDOMNodeList
  53. {
  54. public:
  55. NS_DECL_ISUPPORTS
  56. NS_DECL_NSIDOMNODELIST
  57. nsDOMNodeList();
  58. private:
  59. ~nsDOMNodeList();
  60. protected:
  61. /* additional members */
  62. };
  63. /* Implementation file */
  64. NS_IMPL_ISUPPORTS1(nsDOMNodeList, nsIDOMNodeList)
  65. nsDOMNodeList::nsDOMNodeList()
  66. {
  67. /* member initializers and constructor code */
  68. }
  69. nsDOMNodeList::~nsDOMNodeList()
  70. {
  71. /* destructor code */
  72. }
  73. /* nsIDOMNode item (in unsigned long index); */
  74. NS_IMETHODIMP nsDOMNodeList::Item(PRUint32 index, nsIDOMNode **_retval)
  75. {
  76. return NS_ERROR_NOT_IMPLEMENTED;
  77. }
  78. /* readonly attribute unsigned long length; */
  79. NS_IMETHODIMP nsDOMNodeList::GetLength(PRUint32 *aLength)
  80. {
  81. return NS_ERROR_NOT_IMPLEMENTED;
  82. }
  83. /* End of implementation class template. */
  84. #endif
  85. #endif /* __gen_nsIDOMNodeList_h__ */