98 static ArrayKlass* cast(Klass* k) {
99 return const_cast<ArrayKlass*>(cast(const_cast<const Klass*>(k)));
100 }
101
102 static const ArrayKlass* cast(const Klass* k) {
103 assert(k->is_array_klass(), "cast to ArrayKlass");
104 return static_cast<const ArrayKlass*>(k);
105 }
106
107 GrowableArray<Klass*>* compute_secondary_supers(int num_extra_slots,
108 Array<InstanceKlass*>* transitive_interfaces);
109
110 // Sizing
111 static int static_size(int header_size);
112
113 virtual void metaspace_pointers_do(MetaspaceClosure* iter);
114
115 // Return a handle.
116 static void complete_create_array_klass(ArrayKlass* k, Klass* super_klass, ModuleEntry* module, TRAPS);
117
118 // JVMTI support
119 jint jvmti_class_status() const;
120
121 #if INCLUDE_CDS
122 // CDS support - remove and restore oops from metadata. Oops are not shared.
123 virtual void remove_unshareable_info();
124 virtual void remove_java_mirror();
125 void restore_unshareable_info(ClassLoaderData* loader_data, Handle protection_domain, TRAPS);
126 void cds_print_value_on(outputStream* st) const;
127 #endif
128
129 void log_array_class_load(Klass* k);
130 // Printing
131 void print_on(outputStream* st) const;
132 void print_value_on(outputStream* st) const;
133
134 void oop_print_on(oop obj, outputStream* st);
135
136 // Verification
137 void verify_on(outputStream* st);
|
98 static ArrayKlass* cast(Klass* k) {
99 return const_cast<ArrayKlass*>(cast(const_cast<const Klass*>(k)));
100 }
101
102 static const ArrayKlass* cast(const Klass* k) {
103 assert(k->is_array_klass(), "cast to ArrayKlass");
104 return static_cast<const ArrayKlass*>(k);
105 }
106
107 GrowableArray<Klass*>* compute_secondary_supers(int num_extra_slots,
108 Array<InstanceKlass*>* transitive_interfaces);
109
110 // Sizing
111 static int static_size(int header_size);
112
113 virtual void metaspace_pointers_do(MetaspaceClosure* iter);
114
115 // Return a handle.
116 static void complete_create_array_klass(ArrayKlass* k, Klass* super_klass, ModuleEntry* module, TRAPS);
117
118 int hash_offset_in_bytes(oop obj, markWord m) const;
119
120 // JVMTI support
121 jint jvmti_class_status() const;
122
123 #if INCLUDE_CDS
124 // CDS support - remove and restore oops from metadata. Oops are not shared.
125 virtual void remove_unshareable_info();
126 virtual void remove_java_mirror();
127 void restore_unshareable_info(ClassLoaderData* loader_data, Handle protection_domain, TRAPS);
128 void cds_print_value_on(outputStream* st) const;
129 #endif
130
131 void log_array_class_load(Klass* k);
132 // Printing
133 void print_on(outputStream* st) const;
134 void print_value_on(outputStream* st) const;
135
136 void oop_print_on(oop obj, outputStream* st);
137
138 // Verification
139 void verify_on(outputStream* st);
|