void RuleHash::AppendRuleToTable(nsHashtable& aTable, nsIAtom* aAtom, nsICSSStyleRule* aRule, PRBool aCaseSensitive)
void RuleHash::AppendRuleToTable(nsHashtable& aTable, PRInt32 aNameSpace, nsICSSStyleRule* aRule)
void RuleHash::AppendRuleToTable(nsHashtable& aTable, nsIAtom* aAtom, nsICSSStyleRule* aRule, PRBool aCaseSensitive){  NS_ASSERTION(nsnull != aAtom, "null hash key");  DependentAtomKey key(aAtom);  key.SetKeyCaseSensitive(aCaseSensitive);  RuleValue*  value = (RuleValue*)aTable.Get(&key);  if (nsnull == value) {    value = new (mArena) RuleValue(aRule, mRuleCount++);    aTable.Put(&key, value);    value->mNext = &mEndValue;  }  else {    while (&mEndValue != value->mNext) {      value = value->mNext;    }    value->mNext = new (mArena) RuleValue(aRule, mRuleCount++);    value->mNext->mNext = &mEndValue;  }  mEndValue.mIndex = mRuleCount;}