< prev index next >

src/hotspot/share/oops/typeArrayKlass.hpp

Print this page

 44   // Constructor
 45   TypeArrayKlass(BasicType type, Symbol* name);
 46   static TypeArrayKlass* allocate(ClassLoaderData* loader_data, BasicType type, Symbol* name, TRAPS);
 47  public:
 48   TypeArrayKlass() {} // For dummy objects.
 49 
 50   // instance variables
 51   jint max_length()                     { return _max_length; }
 52   void set_max_length(jint m)           { _max_length = m;    }
 53 
 54   // testers
 55   DEBUG_ONLY(bool is_typeArray_klass_slow() const  { return true; })
 56 
 57   // klass allocation
 58   static TypeArrayKlass* create_klass(BasicType type, const char* name_str,
 59                                TRAPS);
 60   static TypeArrayKlass* create_klass(BasicType type, TRAPS) {
 61     return create_klass(type, external_name(type), THREAD);
 62   }
 63 
 64   size_t oop_size(oop obj) const;
 65 
 66   // Allocation
 67   typeArrayOop allocate_common(int length, bool do_zero, TRAPS);
 68   typeArrayOop allocate(int length, TRAPS) { return allocate_common(length, true, THREAD); }
 69   oop multi_allocate(int rank, jint* sizes, TRAPS);
 70 
 71   oop protection_domain() const { return nullptr; }
 72 
 73   // Copying
 74   void  copy_array(arrayOop s, int src_pos, arrayOop d, int dst_pos, int length, TRAPS);
 75 
 76   // Oop iterators. Since there are no oops in TypeArrayKlasses,
 77   // these functions only return the size of the object.
 78 
 79  private:
 80   // The implementation used by all oop_oop_iterate functions in TypeArrayKlasses.
 81   inline void oop_oop_iterate_impl(oop obj, OopIterateClosure* closure);
 82 
 83  public:
 84   // Wraps oop_oop_iterate_impl to conform to macros.

 44   // Constructor
 45   TypeArrayKlass(BasicType type, Symbol* name);
 46   static TypeArrayKlass* allocate(ClassLoaderData* loader_data, BasicType type, Symbol* name, TRAPS);
 47  public:
 48   TypeArrayKlass() {} // For dummy objects.
 49 
 50   // instance variables
 51   jint max_length()                     { return _max_length; }
 52   void set_max_length(jint m)           { _max_length = m;    }
 53 
 54   // testers
 55   DEBUG_ONLY(bool is_typeArray_klass_slow() const  { return true; })
 56 
 57   // klass allocation
 58   static TypeArrayKlass* create_klass(BasicType type, const char* name_str,
 59                                TRAPS);
 60   static TypeArrayKlass* create_klass(BasicType type, TRAPS) {
 61     return create_klass(type, external_name(type), THREAD);
 62   }
 63 
 64   size_t oop_size(oop obj, markWord mark) const;
 65 
 66   // Allocation
 67   typeArrayOop allocate_common(int length, bool do_zero, TRAPS);
 68   typeArrayOop allocate(int length, TRAPS) { return allocate_common(length, true, THREAD); }
 69   oop multi_allocate(int rank, jint* sizes, TRAPS);
 70 
 71   oop protection_domain() const { return nullptr; }
 72 
 73   // Copying
 74   void  copy_array(arrayOop s, int src_pos, arrayOop d, int dst_pos, int length, TRAPS);
 75 
 76   // Oop iterators. Since there are no oops in TypeArrayKlasses,
 77   // these functions only return the size of the object.
 78 
 79  private:
 80   // The implementation used by all oop_oop_iterate functions in TypeArrayKlasses.
 81   inline void oop_oop_iterate_impl(oop obj, OopIterateClosure* closure);
 82 
 83  public:
 84   // Wraps oop_oop_iterate_impl to conform to macros.
< prev index next >