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

#ifndef __javax_xml_xpath_XPathConstants__
#define __javax_xml_xpath_XPathConstants__

#pragma interface

#include <java/lang/Object.h>
extern "Java"
{
  namespace javax
  {
    namespace xml
    {
      namespace namespace
      {
          class QName;
      }
      namespace xpath
      {
          class XPathConstants;
      }
    }
  }
}

class javax::xml::xpath::XPathConstants : public ::java::lang::Object
{

  XPathConstants();
public:
  static ::javax::xml::namespace::QName * NUMBER;
  static ::javax::xml::namespace::QName * STRING;
  static ::javax::xml::namespace::QName * BOOLEAN;
  static ::javax::xml::namespace::QName * NODESET;
  static ::javax::xml::namespace::QName * NODE;
  static ::java::lang::String * DOM_OBJECT_MODEL;
  static ::java::lang::Class class$;
};

#endif // __javax_xml_xpath_XPathConstants__
