Main Page | Namespace List | Alphabetical List | Data Structures | Directories | File List | Data Fields | Globals | Related Pages

rclass Struct Reference

#include <class.h>


Detailed Description

General class slot definition.

Definition at line 89 of file class.h.

Data Fields

jvm_array_dim arraydims
 Number of array dimensions, meaningful only when CLASS_STATUS_ARRAY is set.
jintarraylength
 Array of length arraydims containing the length of array in each of those dimensions.
jvm_object_hash class_objhash
 Object table hash used to find this slot.
jvalueclass_static_field_data
 field lookup array[] for class static fields.
jvm_field_indexclass_static_field_lookup
 field lookup array[] for class static fields.
jvm_class_index defining_ClassLoader
 Object table hash of defining ClassLoader.
jvm_class_index initiating_ClassLoader
 Object table hash of initiating ClassLoader.
jvm_class_index lower_dim_array
 Class table index of version of this class with one fewer array dimensions, meaningful only when CLASS_STATUS_ARRAY is set.
u2 num_class_static_field_lookups
 size of class_static_field_lookup field lookup array[] for class static fields
u2 num_object_instance_field_lookups
 size of object_instance_field_lookup field lookup array[] for object instance fields
jvm_field_indexobject_instance_field_lookup
 field lookup array[] for object instance fields.
rvoidpgarbage
 Garbage collection profile of this class.
rushort status
u1 unused1
 Not used, keep 2-byte alignment.


Field Documentation

rushort rclass::status
 

Runtime status of class, bitwise

Definition at line 91 of file class.h.

u1 rclass::unused1
 

Not used, keep 2-byte alignment.

Definition at line 166 of file class.h.

jvm_array_dim rclass::arraydims
 

Number of array dimensions, meaningful only when CLASS_STATUS_ARRAY is set.

Definition at line 168 of file class.h.

jint* rclass::arraylength
 

Array of length arraydims containing the length of array in each of those dimensions.

E.g., arraydims is 4 for new X[7][3][9][2] so this parameter will be a 4-element array containing the numbers {7, 3, 9, 2}

Definition at line 174 of file class.h.

jvm_class_index rclass::lower_dim_array
 

Class table index of version of this class with one fewer array dimensions, meaningful only when CLASS_STATUS_ARRAY is set.

Definition at line 181 of file class.h.

jvm_object_hash rclass::class_objhash
 

Object table hash used to find this slot.

Definition at line 187 of file class.h.

u2 rclass::num_class_static_field_lookups
 

size of class_static_field_lookup field lookup array[] for class static fields

Definition at line 190 of file class.h.

jvm_field_index* rclass::class_static_field_lookup
 

field lookup array[] for class static fields.

Indexed by jvm_field_lookup_index

Definition at line 195 of file class.h.

jvalue* rclass::class_static_field_data
 

field lookup array[] for class static fields.

Indexed by jvm_field_lookup_index

Definition at line 201 of file class.h.

u2 rclass::num_object_instance_field_lookups
 

size of object_instance_field_lookup field lookup array[] for object instance fields

Definition at line 209 of file class.h.

jvm_field_index* rclass::object_instance_field_lookup
 

field lookup array[] for object instance fields.

The jvalue array[] for each object may be found in robject.object_instance_field_data instead of here in order to have unique values for each and every object. (This is over and against the class static field array[] here in this structure.) Indexed by jvm_field_lookup_index

Definition at line 214 of file class.h.

jvm_class_index rclass::initiating_ClassLoader
 

Object table hash of initiating ClassLoader.

Definition at line 229 of file class.h.

jvm_class_index rclass::defining_ClassLoader
 

Object table hash of defining ClassLoader.

Definition at line 232 of file class.h.

rvoid* rclass::pgarbage
 

Garbage collection profile of this class.

An rvoid pointer is used here to avoid linking this structure to any particular GC implementation.

Definition at line 235 of file class.h.


The documentation for this struct was generated from the following file:
Generated on Fri Sep 30 19:01:16 2005 by  doxygen 1.4.4