*aParser = nsnull; if (mParsers) { PRUint32 count = 0; mParsers->Count(&count); if (0 < count--) { *aParser = (nsICSSParser*)mParsers->ElementAt(count); mParsers->RemoveElementAt(count); } }
CSSLoaderImpl::GetParserFor(nsICSSStyleSheet* aSheet,                             nsICSSParser** aParser){  NS_ASSERTION(aParser, "null pointer");  if (! aParser) {    return NS_ERROR_NULL_POINTER;  }  nsresult result = NS_OK;  *aParser = nsnull;  if (mParsers) {    PRUint32 count = 0;    mParsers->Count(&count);    if (0 < count--) {      *aParser = (nsICSSParser*)mParsers->ElementAt(count);      mParsers->RemoveElementAt(count);    }  }  if (! *aParser) {    result = NS_NewCSSParser(aParser);  }  if (*aParser) {    (*aParser)->SetCaseSensitive(mCaseSensitive);    if (aSheet) {      (*aParser)->SetStyleSheet(aSheet);    }    (*aParser)->SetChildLoader(this);  }  return result;}