
// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-

#ifndef __gnu_xml_dom_html2_DomHTMLImpl__
#define __gnu_xml_dom_html2_DomHTMLImpl__

#pragma interface

#include <gnu/xml/dom/DomImpl.h>
extern "Java"
{
  namespace gnu
  {
    namespace xml
    {
      namespace dom
      {
        namespace html2
        {
            class DomHTMLImpl;
        }
      }
    }
  }
  namespace org
  {
    namespace w3c
    {
      namespace dom
      {
          class Document;
      }
    }
  }
}

class gnu::xml::dom::html2::DomHTMLImpl : public ::gnu::xml::dom::DomImpl
{

public:
  DomHTMLImpl();
public: // actually protected
  virtual ::org::w3c::dom::Document * createDocument();
public:
  virtual ::java::lang::Object * getFeature(::java::lang::String *, ::java::lang::String *);
  static ::java::lang::Class class$;
};

#endif // __gnu_xml_dom_html2_DomHTMLImpl__
