const PRUnichar *match_str, *entry_str; match_atom->GetUnicode(&match_str); entry_atom->GetUnicode(&entry_str);
const char *match_str, *entry_str; match_atom->GetUTF8String(&match_str); entry_atom->GetUTF8String(&entry_str);
RuleHash_CIMatchEntry(PLDHashTable *table, const PLDHashEntryHdr *hdr,                      const void *key){  nsIAtom *match_atom = NS_CONST_CAST(nsIAtom*, NS_STATIC_CAST(const nsIAtom*,                            key));  // Use the |getKey| callback to avoid code duplication.  // XXX Ugh!  Why does |getKey| have different |const|-ness?  nsIAtom *entry_atom = NS_CONST_CAST(nsIAtom*, NS_STATIC_CAST(const nsIAtom*,             table->ops->getKey(table, NS_CONST_CAST(PLDHashEntryHdr*, hdr))));  // Check for case-sensitive match first.  if (match_atom == entry_atom)    return PR_TRUE;  const PRUnichar *match_str, *entry_str;  match_atom->GetUnicode(&match_str);  entry_atom->GetUnicode(&entry_str);  return nsDependentString(match_str).Equals(nsDependentString(entry_str),                                          nsCaseInsensitiveStringComparator());}