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

#ifndef __gnu_classpath_jdwp_JdwpConstants$ModKind__
#define __gnu_classpath_jdwp_JdwpConstants$ModKind__

#pragma interface

#include <java/lang/Object.h>
extern "Java"
{
  namespace gnu
  {
    namespace classpath
    {
      namespace jdwp
      {
          class JdwpConstants$ModKind;
      }
    }
  }
}

class gnu::classpath::jdwp::JdwpConstants$ModKind : public ::java::lang::Object
{

public:
  JdwpConstants$ModKind();
  static const jbyte COUNT = 1;
  static const jbyte CONDITIONAL = 2;
  static const jbyte THREAD_ONLY = 3;
  static const jbyte CLASS_ONLY = 4;
  static const jbyte CLASS_MATCH = 5;
  static const jbyte CLASS_EXCLUDE = 6;
  static const jbyte LOCATION_ONLY = 7;
  static const jbyte EXCEPTION_ONLY = 8;
  static const jbyte FIELD_ONLY = 9;
  static const jbyte STEP = 10;
  static const jbyte INSTANCE_ONLY = 11;
  static ::java::lang::Class class$;
};

#endif // __gnu_classpath_jdwp_JdwpConstants$ModKind__
