< prev index next >

src/hotspot/share/oops/klass.hpp

Print this page
rev 50604 : imported patch jep181-rev1


 450 
 451   bool search_secondary_supers(Klass* k) const;
 452 
 453   // Find LCA in class hierarchy
 454   Klass *LCA( Klass *k );
 455 
 456   // Check whether reflection/jni/jvm code is allowed to instantiate this class;
 457   // if not, throw either an Error or an Exception.
 458   virtual void check_valid_for_instantiation(bool throwError, TRAPS);
 459 
 460   // array copying
 461   virtual void  copy_array(arrayOop s, int src_pos, arrayOop d, int dst_pos, int length, TRAPS);
 462 
 463   // tells if the class should be initialized
 464   virtual bool should_be_initialized() const    { return false; }
 465   // initializes the klass
 466   virtual void initialize(TRAPS);
 467   // lookup operation for MethodLookupCache
 468   friend class MethodLookupCache;
 469   virtual Klass* find_field(Symbol* name, Symbol* signature, fieldDescriptor* fd) const;
 470   virtual Method* uncached_lookup_method(const Symbol* name, const Symbol* signature, OverpassLookupMode overpass_mode) const;


 471  public:
 472   Method* lookup_method(const Symbol* name, const Symbol* signature) const {
 473     return uncached_lookup_method(name, signature, find_overpass);
 474   }
 475 
 476   // array class with specific rank
 477   Klass* array_klass(int rank, TRAPS)         {  return array_klass_impl(false, rank, THREAD); }
 478 
 479   // array class with this klass as element type
 480   Klass* array_klass(TRAPS)                   {  return array_klass_impl(false, THREAD); }
 481 
 482   // These will return NULL instead of allocating on the heap:
 483   // NB: these can block for a mutex, like other functions with TRAPS arg.
 484   Klass* array_klass_or_null(int rank);
 485   Klass* array_klass_or_null();
 486 
 487   virtual oop protection_domain() const = 0;
 488 
 489   oop class_loader() const;
 490 




 450 
 451   bool search_secondary_supers(Klass* k) const;
 452 
 453   // Find LCA in class hierarchy
 454   Klass *LCA( Klass *k );
 455 
 456   // Check whether reflection/jni/jvm code is allowed to instantiate this class;
 457   // if not, throw either an Error or an Exception.
 458   virtual void check_valid_for_instantiation(bool throwError, TRAPS);
 459 
 460   // array copying
 461   virtual void  copy_array(arrayOop s, int src_pos, arrayOop d, int dst_pos, int length, TRAPS);
 462 
 463   // tells if the class should be initialized
 464   virtual bool should_be_initialized() const    { return false; }
 465   // initializes the klass
 466   virtual void initialize(TRAPS);
 467   // lookup operation for MethodLookupCache
 468   friend class MethodLookupCache;
 469   virtual Klass* find_field(Symbol* name, Symbol* signature, fieldDescriptor* fd) const;
 470   virtual Method* uncached_lookup_method(const Symbol* name, const Symbol* signature,
 471                                          OverpassLookupMode overpass_mode,
 472                                          PrivateLookupMode = find_private) const;
 473  public:
 474   Method* lookup_method(const Symbol* name, const Symbol* signature) const {
 475     return uncached_lookup_method(name, signature, find_overpass);
 476   }
 477 
 478   // array class with specific rank
 479   Klass* array_klass(int rank, TRAPS)         {  return array_klass_impl(false, rank, THREAD); }
 480 
 481   // array class with this klass as element type
 482   Klass* array_klass(TRAPS)                   {  return array_klass_impl(false, THREAD); }
 483 
 484   // These will return NULL instead of allocating on the heap:
 485   // NB: these can block for a mutex, like other functions with TRAPS arg.
 486   Klass* array_klass_or_null(int rank);
 487   Klass* array_klass_or_null();
 488 
 489   virtual oop protection_domain() const = 0;
 490 
 491   oop class_loader() const;
 492 


< prev index next >