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

#ifndef __java_lang_reflect_Constructor__
#define __java_lang_reflect_Constructor__

#pragma interface

#include <java/lang/reflect/AccessibleObject.h>
#include <gcj/array.h>

class ::java::lang::reflect::Constructor : public ::java::lang::reflect::AccessibleObject
{
public:
  jboolean equals (::java::lang::Object *);
  ::java::lang::Class *getDeclaringClass () { return declaringClass; }
  JArray< ::java::lang::Class *> *getExceptionTypes ();
  jint getModifiers ();
  ::java::lang::String *getName ();
  JArray< ::java::lang::Class *> *getParameterTypes ();
  jint hashCode ();
private:
  void getType ();
public:
  ::java::lang::Object *newInstance (JArray< ::java::lang::Object *> *);
  ::java::lang::String *toString ();
private:
  Constructor ();
  ::java::lang::Class *declaringClass;
  JArray< ::java::lang::Class *> *exception_types;
  JArray< ::java::lang::Class *> *parameter_types;
  jint offset;
  friend jmethodID _Jv_FromReflectedConstructor (java::lang::reflect::Constructor *);
  friend class java::lang::Class;
  friend jobject _Jv_JNI_ToReflectedMethod (_Jv_JNIEnv *, jclass, jmethodID, jboolean);
public:

  static ::java::lang::Class class$;
};

#endif /* __java_lang_reflect_Constructor__ */
