1172 const Klass* super_klass,
1173 Array<InstanceKlass*>* local_interfaces,
1174 Array<InstanceKlass*>* transitive_interfaces);
1175
1176 // The constant pool is on stack if any of the methods are executing or
1177 // referenced by handles.
1178 bool on_stack() const { return _constants->on_stack(); }
1179
1180 // callbacks for actions during class unloading
1181 static void unload_class(InstanceKlass* ik);
1182 static void release_C_heap_structures(InstanceKlass* ik);
1183
1184 // Naming
1185 const char* signature_name() const;
1186 static Symbol* package_from_name(const Symbol* name, TRAPS);
1187
1188 // GC specific object visitors
1189 //
1190 #if INCLUDE_PARALLELGC
1191 // Parallel Compact
1192 void oop_pc_follow_contents(oop obj, ParCompactionManager* cm);
1193 void oop_pc_update_pointers(oop obj, ParCompactionManager* cm);
1194 #endif
1195
1196 // Oop fields (and metadata) iterators
1197 //
1198 // The InstanceKlass iterators also visits the Object's klass.
1199
1200 // Forward iteration
1201 public:
1202 // Iterate over all oop fields in the oop maps.
1203 template <typename T, class OopClosureType>
1204 inline void oop_oop_iterate_oop_maps(oop obj, OopClosureType* closure);
1205
1206 // Iterate over all oop fields and metadata.
1207 template <typename T, class OopClosureType>
1208 inline int oop_oop_iterate(oop obj, OopClosureType* closure);
1209
1210 // Iterate over all oop fields in one oop map.
1211 template <typename T, class OopClosureType>
|
1172 const Klass* super_klass,
1173 Array<InstanceKlass*>* local_interfaces,
1174 Array<InstanceKlass*>* transitive_interfaces);
1175
1176 // The constant pool is on stack if any of the methods are executing or
1177 // referenced by handles.
1178 bool on_stack() const { return _constants->on_stack(); }
1179
1180 // callbacks for actions during class unloading
1181 static void unload_class(InstanceKlass* ik);
1182 static void release_C_heap_structures(InstanceKlass* ik);
1183
1184 // Naming
1185 const char* signature_name() const;
1186 static Symbol* package_from_name(const Symbol* name, TRAPS);
1187
1188 // GC specific object visitors
1189 //
1190 #if INCLUDE_PARALLELGC
1191 // Parallel Compact
1192 void oop_pc_update_pointers(oop obj, ParCompactionManager* cm);
1193 #endif
1194
1195 // Oop fields (and metadata) iterators
1196 //
1197 // The InstanceKlass iterators also visits the Object's klass.
1198
1199 // Forward iteration
1200 public:
1201 // Iterate over all oop fields in the oop maps.
1202 template <typename T, class OopClosureType>
1203 inline void oop_oop_iterate_oop_maps(oop obj, OopClosureType* closure);
1204
1205 // Iterate over all oop fields and metadata.
1206 template <typename T, class OopClosureType>
1207 inline int oop_oop_iterate(oop obj, OopClosureType* closure);
1208
1209 // Iterate over all oop fields in one oop map.
1210 template <typename T, class OopClosureType>
|