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