< prev index next >

src/share/vm/oops/constantPool.hpp

Print this page




 739 
 740   oop resolve_bootstrap_specifier_at(int index, TRAPS) {
 741     constantPoolHandle h_this(THREAD, this);
 742     return resolve_bootstrap_specifier_at_impl(h_this, index, THREAD);
 743   }
 744 
 745   // Klass name matches name at offset
 746   bool klass_name_at_matches(const InstanceKlass* k, int which);
 747 
 748   // Sizing
 749   int length() const                   { return _length; }
 750   void set_length(int length)          { _length = length; }
 751 
 752   // Tells whether index is within bounds.
 753   bool is_within_bounds(int index) const {
 754     return 0 <= index && index < length();
 755   }
 756 
 757   // Sizing (in words)
 758   static int header_size()             {
 759     return align_size_up((int)sizeof(ConstantPool), wordSize) / wordSize;
 760   }
 761   static int size(int length)          { return align_metadata_size(header_size() + length); }
 762   int size() const                     { return size(length()); }
 763 #if INCLUDE_SERVICES
 764   void collect_statistics(KlassSizeStats *sz) const;
 765 #endif
 766 
 767   friend class ClassFileParser;
 768   friend class SystemDictionary;
 769 
 770   // Used by CDS. These classes need to access the private ConstantPool() constructor.
 771   template <class T> friend class CppVtableTesterA;
 772   template <class T> friend class CppVtableTesterB;
 773   template <class T> friend class CppVtableCloner;
 774 
 775   // Used by compiler to prevent classloading.
 776   static Method*          method_at_if_loaded      (const constantPoolHandle& this_cp, int which);
 777   static bool       has_appendix_at_if_loaded      (const constantPoolHandle& this_cp, int which);
 778   static oop            appendix_at_if_loaded      (const constantPoolHandle& this_cp, int which);
 779   static bool    has_method_type_at_if_loaded      (const constantPoolHandle& this_cp, int which);




 739 
 740   oop resolve_bootstrap_specifier_at(int index, TRAPS) {
 741     constantPoolHandle h_this(THREAD, this);
 742     return resolve_bootstrap_specifier_at_impl(h_this, index, THREAD);
 743   }
 744 
 745   // Klass name matches name at offset
 746   bool klass_name_at_matches(const InstanceKlass* k, int which);
 747 
 748   // Sizing
 749   int length() const                   { return _length; }
 750   void set_length(int length)          { _length = length; }
 751 
 752   // Tells whether index is within bounds.
 753   bool is_within_bounds(int index) const {
 754     return 0 <= index && index < length();
 755   }
 756 
 757   // Sizing (in words)
 758   static int header_size()             {
 759     return align_up((int)sizeof(ConstantPool), wordSize) / wordSize;
 760   }
 761   static int size(int length)          { return align_metadata_size(header_size() + length); }
 762   int size() const                     { return size(length()); }
 763 #if INCLUDE_SERVICES
 764   void collect_statistics(KlassSizeStats *sz) const;
 765 #endif
 766 
 767   friend class ClassFileParser;
 768   friend class SystemDictionary;
 769 
 770   // Used by CDS. These classes need to access the private ConstantPool() constructor.
 771   template <class T> friend class CppVtableTesterA;
 772   template <class T> friend class CppVtableTesterB;
 773   template <class T> friend class CppVtableCloner;
 774 
 775   // Used by compiler to prevent classloading.
 776   static Method*          method_at_if_loaded      (const constantPoolHandle& this_cp, int which);
 777   static bool       has_appendix_at_if_loaded      (const constantPoolHandle& this_cp, int which);
 778   static oop            appendix_at_if_loaded      (const constantPoolHandle& this_cp, int which);
 779   static bool    has_method_type_at_if_loaded      (const constantPoolHandle& this_cp, int which);


< prev index next >