OSDN Git Service

2007-04-25 Andrew Haley <aph@redhat.com>
[pf3gnuchains/gcc-fork.git] / libjava / java / io / ObjectStreamClass.h
1
2 // DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
3
4 #ifndef __java_io_ObjectStreamClass__
5 #define __java_io_ObjectStreamClass__
6
7 #pragma interface
8
9 #include <java/lang/Object.h>
10 #include <gcj/array.h>
11
12 extern "Java"
13 {
14   namespace gnu
15   {
16     namespace java
17     {
18       namespace io
19       {
20           class NullOutputStream;
21       }
22     }
23   }
24 }
25
26 class java::io::ObjectStreamClass : public ::java::lang::Object
27 {
28
29 public:
30   static ::java::io::ObjectStreamClass * lookup(::java::lang::Class *);
31 public: // actually package-private
32   static ::java::io::ObjectStreamClass * lookupForClassObject(::java::lang::Class *);
33 public:
34   virtual ::java::lang::String * getName();
35   virtual ::java::lang::Class * forClass();
36   virtual jlong getSerialVersionUID();
37   virtual JArray< ::java::io::ObjectStreamField * > * getFields();
38   virtual ::java::io::ObjectStreamField * getField(::java::lang::String *);
39   virtual ::java::lang::String * toString();
40 public: // actually package-private
41   virtual jboolean hasWriteMethod();
42   virtual jboolean isSerializable();
43   virtual jboolean isExternalizable();
44   virtual jboolean isEnum();
45   virtual ::java::io::ObjectStreamClass * getSuper();
46   virtual JArray< ::java::io::ObjectStreamClass * > * hierarchy();
47   virtual jint getFlags();
48   ObjectStreamClass(::java::lang::String *, jlong, jbyte, JArray< ::java::io::ObjectStreamField * > *);
49   virtual void setClass(::java::lang::Class *, ::java::io::ObjectStreamClass *);
50   virtual void setSuperclass(::java::io::ObjectStreamClass *);
51   virtual void calculateOffsets();
52 private:
53   ::java::lang::reflect::Method * findMethod(JArray< ::java::lang::reflect::Method * > *, ::java::lang::String *, JArray< ::java::lang::Class * > *, ::java::lang::Class *, jboolean);
54   static jboolean inSamePackage(::java::lang::Class *, ::java::lang::Class *);
55   static ::java::lang::reflect::Method * findAccessibleMethod(::java::lang::String *, ::java::lang::Class *);
56   static jboolean loadedByBootOrApplicationClassLoader(::java::lang::Class *);
57   void cacheMethods();
58   ObjectStreamClass(::java::lang::Class *);
59   void setFlags(::java::lang::Class *);
60 public: // actually package-private
61   virtual void ensureFieldsSet(::java::lang::Class *);
62 private:
63   void setFields(::java::lang::Class *);
64   jlong getClassUID(::java::lang::Class *);
65 public: // actually package-private
66   virtual jlong getClassUIDFromField(::java::lang::Class *);
67   virtual jlong calculateClassUID(::java::lang::Class *);
68 private:
69   JArray< ::java::io::ObjectStreamField * > * getSerialPersistentFields(::java::lang::Class *);
70 public: // actually package-private
71   virtual ::java::io::Externalizable * newInstance();
72   static JArray< ::java::io::ObjectStreamField * > * INVALID_FIELDS;
73 private:
74   JArray< ::java::io::ObjectStreamClass * > * __attribute__((aligned(__alignof__( ::java::lang::Object)))) hierarchy__;
75 public: // actually package-private
76   static JArray< ::java::lang::Class * > * noArgs;
77   static ::java::util::Hashtable * methodCache;
78   static JArray< ::java::lang::Class * > * readObjectSignature;
79   static JArray< ::java::lang::Class * > * writeObjectSignature;
80   static ::java::util::Hashtable * uidCache;
81 public:
82   static JArray< ::java::io::ObjectStreamField * > * NO_FIELDS;
83 private:
84   static ::java::util::Hashtable * classLookupTable;
85   static ::gnu::java::io::NullOutputStream * nullOutputStream;
86   static ::java::util::Comparator * interfaceComparator;
87   static ::java::util::Comparator * memberComparator;
88   static JArray< ::java::lang::Class * > * writeMethodArgTypes;
89   ::java::io::ObjectStreamClass * superClass;
90   ::java::lang::Class * clazz;
91   ::java::lang::String * name;
92   jlong uid;
93   jbyte flags;
94 public: // actually package-private
95   JArray< ::java::io::ObjectStreamField * > * fields;
96   jint primFieldSize;
97   jint objectFieldCount;
98   ::java::lang::reflect::Method * readObjectMethod;
99   ::java::lang::reflect::Method * readResolveMethod;
100   ::java::lang::reflect::Method * writeReplaceMethod;
101   ::java::lang::reflect::Method * writeObjectMethod;
102   jboolean realClassIsSerializable;
103   jboolean realClassIsExternalizable;
104   JArray< ::java::io::ObjectStreamField * > * fieldMapping;
105   ::java::lang::reflect::Constructor * firstNonSerializableParentConstructor;
106 private:
107   ::java::lang::reflect::Constructor * constructor;
108 public: // actually package-private
109   jboolean isProxyClass;
110 private:
111   jboolean fieldsSet;
112   static const jlong serialVersionUID = -6120832682080437368LL;
113 public:
114   static ::java::lang::Class class$;
115 };
116
117 #endif // __java_io_ObjectStreamClass__