488 Method* find_method(Symbol* name, Symbol* signature) const; |
488 Method* find_method(Symbol* name, Symbol* signature) const; |
489 static Method* find_method(Array<Method*>* methods, Symbol* name, Symbol* signature); |
489 static Method* find_method(Array<Method*>* methods, Symbol* name, Symbol* signature); |
490 static Method* find_instance_method(Array<Method*>* methods, Symbol* name, Symbol* signature); |
490 static Method* find_instance_method(Array<Method*>* methods, Symbol* name, Symbol* signature); |
491 |
491 |
492 // find a local method index in default_methods (returns -1 if not found) |
492 // find a local method index in default_methods (returns -1 if not found) |
493 static int find_method_index(Array<Method*>* methods, Symbol* name, Symbol* signature); |
493 static int find_method_index(Array<Method*>* methods, Symbol* name, Symbol* signature, bool skipping_overpass); |
494 |
494 |
495 // lookup operation (returns NULL if not found) |
495 // lookup operation (returns NULL if not found) |
496 Method* uncached_lookup_method(Symbol* name, Symbol* signature) const; |
496 Method* uncached_lookup_method(Symbol* name, Symbol* signature, MethodLookupMode mode) const; |
497 |
497 |
498 // lookup a method in all the interfaces that this class implements |
498 // lookup a method in all the interfaces that this class implements |
499 // (returns NULL if not found) |
499 // (returns NULL if not found) |
500 Method* lookup_method_in_all_interfaces(Symbol* name, Symbol* signature, bool skip_default_methods) const; |
500 Method* lookup_method_in_all_interfaces(Symbol* name, Symbol* signature, MethodLookupMode mode) const; |
501 |
501 |
502 // lookup a method in local defaults then in all interfaces |
502 // lookup a method in local defaults then in all interfaces |
503 // (returns NULL if not found) |
503 // (returns NULL if not found) |
504 Method* lookup_method_in_ordered_interfaces(Symbol* name, Symbol* signature) const; |
504 Method* lookup_method_in_ordered_interfaces(Symbol* name, Symbol* signature) const; |
505 |
505 |
1017 // Returns the array class for the n'th dimension |
1017 // Returns the array class for the n'th dimension |
1018 Klass* array_klass_impl(bool or_null, int n, TRAPS); |
1018 Klass* array_klass_impl(bool or_null, int n, TRAPS); |
1019 |
1019 |
1020 // Returns the array class with this class as element type |
1020 // Returns the array class with this class as element type |
1021 Klass* array_klass_impl(bool or_null, TRAPS); |
1021 Klass* array_klass_impl(bool or_null, TRAPS); |
|
1022 |
|
1023 // find a local method (returns NULL if not found) |
|
1024 Method* find_method_impl(Symbol* name, Symbol* signature, bool skipping_overpass) const; |
|
1025 static Method* find_method_impl(Array<Method*>* methods, Symbol* name, Symbol* signature, bool skipping_overpass); |
1022 |
1026 |
1023 // Free CHeap allocated fields. |
1027 // Free CHeap allocated fields. |
1024 void release_C_heap_structures(); |
1028 void release_C_heap_structures(); |
1025 public: |
1029 public: |
1026 // CDS support - remove and restore oops from metadata. Oops are not shared. |
1030 // CDS support - remove and restore oops from metadata. Oops are not shared. |