#ifndef __JAVA_LANG_OBJECT_H__
#define __JAVA_LANG_OBJECT_H__
#pragma interface
#include <gcj/javaprims.h>
struct _JvObjectPrefix
{
protected:
virtual void nacd_1 (void) {}; # ifndef __ia64__
virtual void nacd_2 (void) {}; # endif
};
class java::lang::Object : public _JvObjectPrefix
{
protected:
virtual void finalize (void);
public:
jclass getClass (void);
virtual jint hashCode (void);
void notify (void);
void notifyAll (void);
void wait (jlong timeout, jint nanos);
virtual jboolean equals (jobject obj);
Object (void);
virtual jstring toString (void);
void wait (void);
void wait (jlong timeout);
friend void _Jv_MonitorEnter (jobject obj);
friend void _Jv_MonitorExit (jobject obj);
friend void _Jv_InitializeSyncMutex (void);
friend void _Jv_FinalizeObject (jobject obj);
#ifdef JV_MARKOBJ_DECL
friend JV_MARKOBJ_DECL;
#endif
#ifdef JV_MARKARRAY_DECL
friend JV_MARKARRAY_DECL;
#endif
static java::lang::Class class$;
protected:
virtual jobject clone (void);
private:
# ifndef JV_HASH_SYNCHRONIZATION
jobject sync_info;
# endif
void sync_init (void);
};
#endif