/** {@inheritDoc} */
 public boolean containsAll(TCharCollection collection) {
   TCharIterator iter = collection.iterator();
   while (iter.hasNext()) {
     if (!TDoubleCharHashMap.this.containsValue(iter.next())) {
       return false;
     }
   }
   return true;
 }
 /** {@inheritDoc} */
 @Override
 public boolean containsAll(TCharCollection collection) {
   TCharIterator iter = collection.iterator();
   while (iter.hasNext()) {
     if (!TCharCharOffheapHashMap.this.containsKey(iter.next())) {
       return false;
     }
   }
   return true;
 }
 /** {@inheritDoc} */
 @Override
 public boolean retainAll(Collection<?> collection) {
   boolean modified = false;
   TCharIterator iter = iterator();
   while (iter.hasNext()) {
     if (!collection.contains(Character.valueOf(iter.next()))) {
       iter.remove();
       modified = true;
     }
   }
   return modified;
 }
 /** {@inheritDoc} */
 @SuppressWarnings({"SuspiciousMethodCalls"})
 public boolean retainAll(Collection<?> collection) {
   boolean modified = false;
   TCharIterator iter = iterator();
   while (iter.hasNext()) {
     if (!collection.contains(Character.valueOf(iter.next()))) {
       iter.remove();
       modified = true;
     }
   }
   return modified;
 }
 /** {@inheritDoc} */
 public boolean retainAll(TCharCollection collection) {
   if (this == collection) {
     return false;
   }
   boolean modified = false;
   TCharIterator iter = iterator();
   while (iter.hasNext()) {
     if (!collection.contains(iter.next())) {
       iter.remove();
       modified = true;
     }
   }
   return modified;
 }
 /** {@inheritDoc} */
 public boolean removeAll(TCharCollection collection) {
   if (this == collection) {
     clear();
     return true;
   }
   boolean changed = false;
   TCharIterator iter = collection.iterator();
   while (iter.hasNext()) {
     char element = iter.next();
     if (remove(element)) {
       changed = true;
     }
   }
   return changed;
 }