/* THIS FILE IS AUTOGENERATED - DO NOT EDIT */

#ifndef mozilla_dom_PrototypeList_h__
#define mozilla_dom_PrototypeList_h__

namespace mozilla {
namespace dom {
namespace prototypes {

namespace id {

enum ID
{
  CSS2Properties = 0,
  CSSStyleDeclaration,
  CanvasRenderingContext2D,
  EventTarget,
  EventTarget_workers,
  Performance,
  PerformanceNavigation,
  PerformanceTiming,
  WebGLRenderingContext,
  WebGLUniformLocation,
  XMLHttpRequest,
  XMLHttpRequestEventTarget,
  XMLHttpRequestEventTarget_workers,
  XMLHttpRequestUpload,
  XMLHttpRequestUpload_workers,
  XMLHttpRequest_workers,
  _ID_Count
};

} // namespace id

typedef id::ID ID;

const unsigned MaxProtoChainLength = 3;

} // namespace prototypes
} // namespace dom
} // namespace mozilla

namespace mozilla {
namespace dom {
namespace constructors {

namespace id {

enum ID
{
  _ID_Count
};

} // namespace id

typedef id::ID ID;

} // namespace constructors
} // namespace dom
} // namespace mozilla

namespace mozilla {
namespace dom {

template <prototypes::ID PrototypeID>
struct PrototypeTraits;

template <class ConcreteClass>
struct PrototypeIDMap;

} // namespace dom
} // namespace mozilla

#endif // mozilla_dom_PrototypeList_h__
