hotspot/src/share/vm/oops/arrayKlass.hpp
changeset 27020 a7c8010446c2
parent 26412 80741eb33ba2
child 28731 f7339cba0a6a
equal deleted inserted replaced
27019:e326bfa8aeed 27020:a7c8010446c2
    26 #define SHARE_VM_OOPS_ARRAYKLASS_HPP
    26 #define SHARE_VM_OOPS_ARRAYKLASS_HPP
    27 
    27 
    28 #include "memory/universe.hpp"
    28 #include "memory/universe.hpp"
    29 #include "oops/klass.hpp"
    29 #include "oops/klass.hpp"
    30 
    30 
       
    31 class fieldDescriptor;
    31 class klassVtable;
    32 class klassVtable;
    32 
    33 
    33 // ArrayKlass is the abstract baseclass for all array classes
    34 // ArrayKlass is the abstract baseclass for all array classes
    34 
    35 
    35 class ArrayKlass: public Klass {
    36 class ArrayKlass: public Klass {
    74   // Allocation
    75   // Allocation
    75   // Sizes points to the first dimension of the array, subsequent dimensions
    76   // Sizes points to the first dimension of the array, subsequent dimensions
    76   // are always in higher memory.  The callers of these set that up.
    77   // are always in higher memory.  The callers of these set that up.
    77   virtual oop multi_allocate(int rank, jint* sizes, TRAPS);
    78   virtual oop multi_allocate(int rank, jint* sizes, TRAPS);
    78   objArrayOop allocate_arrayArray(int n, int length, TRAPS);
    79   objArrayOop allocate_arrayArray(int n, int length, TRAPS);
       
    80 
       
    81   // find field according to JVM spec 5.4.3.2, returns the klass in which the field is defined
       
    82   Klass* find_field(Symbol* name, Symbol* sig, fieldDescriptor* fd) const;
    79 
    83 
    80   // Lookup operations
    84   // Lookup operations
    81   Method* uncached_lookup_method(Symbol* name, Symbol* signature, MethodLookupMode mode) const;
    85   Method* uncached_lookup_method(Symbol* name, Symbol* signature, MethodLookupMode mode) const;
    82 
    86 
    83   // Casting from Klass*
    87   // Casting from Klass*