equal
deleted
inserted
replaced
752 |
752 |
753 // subclass/subinterface checks |
753 // subclass/subinterface checks |
754 bool implements_interface(Klass* k) const; |
754 bool implements_interface(Klass* k) const; |
755 bool is_same_or_direct_interface(Klass* k) const; |
755 bool is_same_or_direct_interface(Klass* k) const; |
756 |
756 |
|
757 #ifdef ASSERT |
|
758 // check whether this class or one of its superclasses was redefined |
|
759 bool has_redefined_this_or_super() const; |
|
760 #endif |
|
761 |
757 // Access to the implementor of an interface. |
762 // Access to the implementor of an interface. |
758 Klass* implementor() const |
763 Klass* implementor() const |
759 { |
764 { |
760 Klass** k = adr_implementor(); |
765 Klass** k = adr_implementor(); |
761 if (k == NULL) { |
766 if (k == NULL) { |
809 void array_klasses_do(void f(Klass* k, TRAPS), TRAPS); |
814 void array_klasses_do(void f(Klass* k, TRAPS), TRAPS); |
810 bool super_types_do(SuperTypeClosure* blk); |
815 bool super_types_do(SuperTypeClosure* blk); |
811 |
816 |
812 // Casting from Klass* |
817 // Casting from Klass* |
813 static InstanceKlass* cast(Klass* k) { |
818 static InstanceKlass* cast(Klass* k) { |
814 assert(k->is_klass(), "must be"); |
819 assert(k == NULL || k->is_klass(), "must be"); |
815 assert(k->oop_is_instance(), "cast to InstanceKlass"); |
820 assert(k == NULL || k->oop_is_instance(), "cast to InstanceKlass"); |
816 return (InstanceKlass*) k; |
821 return (InstanceKlass*) k; |
817 } |
822 } |
818 |
823 |
819 InstanceKlass* java_super() const { |
824 InstanceKlass* java_super() const { |
820 return (super() == NULL) ? NULL : cast(super()); |
825 return (super() == NULL) ? NULL : cast(super()); |