protected:
protected: static void AddToken(CToken*& aToken,nsresult aResult,nsDeque& aDeque);
CLASS_EXPORT_HTMLPARS nsHTMLTokenizer : public nsITokenizer {public:          nsHTMLTokenizer();  virtual ~nsHTMLTokenizer();          NS_DECL_ISUPPORTS  virtual nsresult          ConsumeToken(nsScanner& aScanner);  virtual nsITokenRecycler* GetTokenRecycler(void);  virtual CToken*           PushTokenFront(CToken* theToken);  virtual CToken*           PushToken(CToken* theToken);	virtual CToken*           PopToken(void);	virtual CToken*           PeekToken(void);	virtual CToken*           GetTokenAt(PRInt32 anIndex);	virtual PRInt32           GetCount(void);protected:  virtual nsresult HandleSkippedContent(nsScanner& aScanner,CToken*& aToken);  virtual nsresult ConsumeTag(PRUnichar aChar,CToken*& aToken,nsScanner& aScanner);  virtual nsresult ConsumeStartTag(PRUnichar aChar,CToken*& aToken,nsScanner& aScanner);  virtual nsresult ConsumeEndTag(PRUnichar aChar,CToken*& aToken,nsScanner& aScanner);  virtual nsresult ConsumeAttributes(PRUnichar aChar,CStartToken* aToken,nsScanner& aScanner);  virtual nsresult ConsumeEntity(PRUnichar aChar,CToken*& aToken,nsScanner& aScanner);  virtual nsresult ConsumeWhitespace(PRUnichar aChar,CToken*& aToken,nsScanner& aScanner);  virtual nsresult ConsumeComment(PRUnichar aChar,CToken*& aToken,nsScanner& aScanner);  virtual nsresult ConsumeNewline(PRUnichar aChar,CToken*& aToken,nsScanner& aScanner);  virtual nsresult ConsumeText(const nsString& aString,CToken*& aToken,nsScanner& aScanner);  virtual nsresult ConsumeContentToEndTag(PRUnichar aChar,eHTMLTags aChildTag,nsScanner& aScanner,CToken*& aToken);  virtual nsresult ConsumeProcessingInstruction(PRUnichar aChar,CToken*& aToken,nsScanner& aScanner);protected:    nsDeque mTokenDeque;  PRBool  mDoXMLEmptyTags;};