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

#ifndef __gnu_classpath_jdwp_JdwpConstants$InvokeOptions__
#define __gnu_classpath_jdwp_JdwpConstants$InvokeOptions__

#pragma interface

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

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

public:
  JdwpConstants$InvokeOptions();
  static const jint INVOKE_SINGLE_THREADED = 1;
  static const jint INVOKE_NONVIRTUAL = 2;
  static ::java::lang::Class class$;
};

#endif // __gnu_classpath_jdwp_JdwpConstants$InvokeOptions__
