454 bool is_override(const methodHandle& super_method, Handle targetclassloader, Symbol* targetclassname, TRAPS);
455
456 // package
457 PackageEntry* package() const { return _package_entry; }
458 ModuleEntry* module() const;
459 bool in_unnamed_package() const { return (_package_entry == NULL); }
460 void set_package(PackageEntry* p) { _package_entry = p; }
461 void set_package(ClassLoaderData* loader_data, TRAPS);
462 bool is_same_class_package(const Klass* class2) const;
463 bool is_same_class_package(oop other_class_loader, const Symbol* other_class_name) const;
464
465 // find an enclosing class
466 InstanceKlass* compute_enclosing_class(bool* inner_is_member, TRAPS) const;
467
468 // Find InnerClasses attribute and return outer_class_info_index & inner_name_index.
469 bool find_inner_classes_attr(int* ooff, int* noff, TRAPS) const;
470
471 private:
472 // Check prohibited package ("java/" only loadable by boot or platform loaders)
473 static void check_prohibited_package(Symbol* class_name,
474 Handle class_loader,
475 TRAPS);
476 public:
477 // tell if two classes have the same enclosing class (at package level)
478 bool is_same_package_member(const Klass* class2, TRAPS) const;
479
480 // initialization state
481 bool is_loaded() const { return _init_state >= loaded; }
482 bool is_linked() const { return _init_state >= linked; }
483 bool is_initialized() const { return _init_state == fully_initialized; }
484 bool is_not_initialized() const { return _init_state < being_initialized; }
485 bool is_being_initialized() const { return _init_state == being_initialized; }
486 bool is_in_error_state() const { return _init_state == initialization_error; }
487 bool is_reentrant_initialization(Thread *thread) { return thread == _init_thread; }
488 ClassState init_state() { return (ClassState)_init_state; }
489 bool is_rewritten() const { return (_misc_flags & _misc_rewritten) != 0; }
490
491 // defineClass specified verification
492 bool should_verify_class() const {
493 return (_misc_flags & _misc_should_verify_class) != 0;
494 }
|
454 bool is_override(const methodHandle& super_method, Handle targetclassloader, Symbol* targetclassname, TRAPS);
455
456 // package
457 PackageEntry* package() const { return _package_entry; }
458 ModuleEntry* module() const;
459 bool in_unnamed_package() const { return (_package_entry == NULL); }
460 void set_package(PackageEntry* p) { _package_entry = p; }
461 void set_package(ClassLoaderData* loader_data, TRAPS);
462 bool is_same_class_package(const Klass* class2) const;
463 bool is_same_class_package(oop other_class_loader, const Symbol* other_class_name) const;
464
465 // find an enclosing class
466 InstanceKlass* compute_enclosing_class(bool* inner_is_member, TRAPS) const;
467
468 // Find InnerClasses attribute and return outer_class_info_index & inner_name_index.
469 bool find_inner_classes_attr(int* ooff, int* noff, TRAPS) const;
470
471 private:
472 // Check prohibited package ("java/" only loadable by boot or platform loaders)
473 static void check_prohibited_package(Symbol* class_name,
474 ClassLoaderData* loader_data,
475 TRAPS);
476 public:
477 // tell if two classes have the same enclosing class (at package level)
478 bool is_same_package_member(const Klass* class2, TRAPS) const;
479
480 // initialization state
481 bool is_loaded() const { return _init_state >= loaded; }
482 bool is_linked() const { return _init_state >= linked; }
483 bool is_initialized() const { return _init_state == fully_initialized; }
484 bool is_not_initialized() const { return _init_state < being_initialized; }
485 bool is_being_initialized() const { return _init_state == being_initialized; }
486 bool is_in_error_state() const { return _init_state == initialization_error; }
487 bool is_reentrant_initialization(Thread *thread) { return thread == _init_thread; }
488 ClassState init_state() { return (ClassState)_init_state; }
489 bool is_rewritten() const { return (_misc_flags & _misc_rewritten) != 0; }
490
491 // defineClass specified verification
492 bool should_verify_class() const {
493 return (_misc_flags & _misc_should_verify_class) != 0;
494 }
|