src/hotspot/share/utilities/growableArray.hpp
changeset 58177 4932dce35882
parent 55307 ed12027517c0
child 58679 9c3209ff7550
equal deleted inserted replaced
58176:470af058bd5f 58177:4932dce35882
   216   bool  is_full() const         { return _len == _max; }
   216   bool  is_full() const         { return _len == _max; }
   217   DEBUG_ONLY(E* data_addr() const      { return _data; })
   217   DEBUG_ONLY(E* data_addr() const      { return _data; })
   218 
   218 
   219   void print();
   219   void print();
   220 
   220 
   221   inline static bool safe_equals(oop obj1, oop obj2) {
       
   222     return oopDesc::equals(obj1, obj2);
       
   223   }
       
   224 
       
   225   template <class X>
       
   226   inline static bool safe_equals(X i1, X i2) {
       
   227     return i1 == i2;
       
   228   }
       
   229 
       
   230   int append(const E& elem) {
   221   int append(const E& elem) {
   231     check_nesting();
   222     check_nesting();
   232     if (_len == _max) grow(_len);
   223     if (_len == _max) grow(_len);
   233     int idx = _len++;
   224     int idx = _len++;
   234     _data[idx] = elem;
   225     _data[idx] = elem;
   309     raw_at_put_grow(i, elem, fill);
   300     raw_at_put_grow(i, elem, fill);
   310   }
   301   }
   311 
   302 
   312   bool contains(const E& elem) const {
   303   bool contains(const E& elem) const {
   313     for (int i = 0; i < _len; i++) {
   304     for (int i = 0; i < _len; i++) {
   314       if (safe_equals(_data[i], elem)) return true;
   305       if (_data[i] == elem) return true;
   315     }
   306     }
   316     return false;
   307     return false;
   317   }
   308   }
   318 
   309 
   319   int  find(const E& elem) const {
   310   int  find(const E& elem) const {