public boolean retainAll(CharIterable source)
{
int oldSize = this.size();
final CharSet sourceSet = source instanceof CharSet ? (CharSet) source : source.toSet();
CharIntHashMap retained = CharIntHashMap.this.select(new CharIntPredicate()
{
public boolean accept(char key, int value)
{
return sourceSet.contains(key);
}