InternetSearchDataSource::GetNumInterpretSections(const nsString &data, PRUint32 &numInterpretSections)
InternetSearchDataSource::GetNumInterpretSections(const PRUnichar *dataUni, PRUint32 &numInterpretSections)
InternetSearchDataSource::GetNumInterpretSections(const nsString &data, PRUint32 &numInterpretSections){	numInterpretSections = 0;	nsAutoString	section; section.AssignWithConversion("<interpret");	nsAutoString	buffer(data);		PRBool		inSection = PR_FALSE;	while(buffer.Length() > 0)	{		PRInt32 eol = buffer.FindCharInSet("\r\n", 0);		if (eol < 0)	break;		nsAutoString	line;		if (eol > 0)		{			buffer.Left(line, eol);		}		buffer.Cut(0, eol+1);		if (line.Length() < 1)	continue;		// skip empty lines		if (line[0] == PRUnichar('#'))	continue;	// skip comments		line.Trim(" \t");		if (inSection == PR_FALSE)		{			PRInt32	sectionOffset = line.Find(section, PR_TRUE);			if (sectionOffset < 0)	continue;			line.Cut(0, sectionOffset + section.Length() + 1);			inSection = PR_TRUE;			++numInterpretSections;			// increment # of sections		}		line.Trim(" \t");		PRInt32	len = line.Length();		if (len > 0)		{			if (line[len-1] == PRUnichar('>'))			{				inSection = PR_FALSE;				line.SetLength(len-1);			}		}	}	return(NS_OK);}