\doxysection{Milter.\+sgmllib.\+SGMLParser Class Reference}
\label{classMilter_1_1sgmllib_1_1SGMLParser}\index{Milter.sgmllib.SGMLParser@{Milter.sgmllib.SGMLParser}}
Inheritance diagram for Milter.\+sgmllib.\+SGMLParser\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=3.000000cm]{classMilter_1_1sgmllib_1_1SGMLParser}
\end{center}
\end{figure}
\doxysubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
def \textbf{ \+\_\+\+\_\+init\+\_\+\+\_\+} (self, verbose=0)
\item 
def \textbf{ reset} (self)
\item 
def \textbf{ setnomoretags} (self)
\item 
def \textbf{ setliteral} (self, $\ast$args)
\item 
def \textbf{ feed} (self, data)
\item 
def \textbf{ close} (self)
\item 
\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_a35d2d06b52ef5ce4b514c05e7c509e29}} 
def {\bfseries error} (self, message)
\item 
\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_a74ad1053e1adc5839b9809635568611e}} 
def {\bfseries goahead} (self, end)
\item 
\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_a79b635bcedab35b4bcba91037e4a18d8}} 
def {\bfseries parse\+\_\+pi} (self, i)
\item 
\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_adf01f8667d3c351583d21be00d30637d}} 
def {\bfseries get\+\_\+starttag\+\_\+text} (self)
\item 
\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_a63fb6bf52682c39187046bc220770130}} 
def {\bfseries parse\+\_\+starttag} (self, i)
\item 
\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_a64ffbb90109b9997d26f068ce71b5db3}} 
def {\bfseries parse\+\_\+endtag} (self, i)
\item 
\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_aded1cc94aaf2cee8202849e15f0cf99e}} 
def {\bfseries finish\+\_\+shorttag} (self, tag, data)
\item 
\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_abe4c7bff5ddc3e8b47fbd6f26d025904}} 
def {\bfseries finish\+\_\+starttag} (self, tag, attrs)
\item 
\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_a8f6acf1905a671c2aee2b6570e99fba3}} 
def {\bfseries finish\+\_\+endtag} (self, tag)
\item 
\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_a5ed3973c78300d35366e597ac723d07a}} 
def {\bfseries handle\+\_\+starttag} (self, tag, method, attrs)
\item 
\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_a5f33294984ad3fba8e5b25a417f6d2c4}} 
def {\bfseries handle\+\_\+endtag} (self, tag, method)
\item 
\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_a8c1c1d270a992a1c34d3366047c99043}} 
def {\bfseries report\+\_\+unbalanced} (self, tag)
\item 
def \textbf{ convert\+\_\+charref} (self, name)
\item 
\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_a3e014a2fcd8c7afcebef1d9967b9e42f}} 
def {\bfseries convert\+\_\+codepoint} (self, codepoint)
\item 
def \textbf{ handle\+\_\+charref} (self, name)
\item 
def \textbf{ convert\+\_\+entityref} (self, name)
\item 
def \textbf{ handle\+\_\+entityref} (self, name)
\item 
\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_a2b68f927a45e794289185af2c94bd32a}} 
def {\bfseries handle\+\_\+data} (self, data)
\item 
\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_a0ed5e23616255bf378920c5d2ca4126d}} 
def {\bfseries handle\+\_\+comment} (self, data)
\item 
\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_a1da9d56c6155748b569d0751330429e2}} 
def {\bfseries handle\+\_\+decl} (self, decl)
\item 
\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_ab22c76db63ec7ee59974d3a16e3ae6af}} 
def {\bfseries handle\+\_\+pi} (self, data)
\item 
\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_aacc708c8bd918522ede39970c085ff0f}} 
def {\bfseries unknown\+\_\+starttag} (self, tag, attrs)
\item 
\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_a42187d9edfd767dd7c06241e5e2f5cb7}} 
def {\bfseries unknown\+\_\+endtag} (self, tag)
\item 
\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_af6404cf1eb7caa9ba73685607c22d858}} 
def {\bfseries unknown\+\_\+charref} (self, ref)
\item 
\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_a53b7be620a46cae243a9046ed7214e5b}} 
def {\bfseries unknown\+\_\+entityref} (self, ref)
\end{DoxyCompactItemize}
\doxysubsection*{Public Attributes}
\begin{DoxyCompactItemize}
\item 
\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_a23c9a956f8e32b30ca7c0e415ecbc77f}} 
{\bfseries verbose}
\item 
\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_a2b258864dfeff7da49094fb839c720fb}} 
{\bfseries rawdata}
\item 
\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_afde104b9c6f8350e532deffcf795a34e}} 
{\bfseries stack}
\item 
\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_a57aef04cd8bcb3be68901dbba164ca81}} 
{\bfseries lasttag}
\item 
\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_abd4a0e96fb8c5e118bf3fd21d79183a5}} 
{\bfseries nomoretags}
\item 
\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_a27fd524d83b5e99f20c9eca37723ac75}} 
{\bfseries literal}
\end{DoxyCompactItemize}
\doxysubsection*{Static Public Attributes}
\begin{DoxyCompactItemize}
\item 
{\bfseries entity\+\_\+or\+\_\+charref}
\item 
\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_a5605ba01c1bbc21eb175bce7d0f79dd9}} 
{\bfseries entitydefs} = \textbackslash{}
\end{DoxyCompactItemize}
\doxysubsection*{Private Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_acfa6bd887f17185bc2b621a11f3564d8}} 
def {\bfseries \+\_\+convert\+\_\+ref} (self, match)
\end{DoxyCompactItemize}
\doxysubsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_aa44bc3b3fa7785ce595209c057ed7ad9}} 
{\bfseries \+\_\+\+\_\+starttag\+\_\+text}
\end{DoxyCompactItemize}
\doxysubsection*{Static Private Attributes}
\begin{DoxyCompactItemize}
\item 
\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_a42c71da16a08f4767d0eedc77b408b9a}} 
string {\bfseries \+\_\+decl\+\_\+otherchars} = \textquotesingle{}=\textquotesingle{}
\end{DoxyCompactItemize}


\doxysubsection{Constructor \& Destructor Documentation}
\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_a30260eb477bcf06bd39c847928b3c05e}} 
\index{Milter.sgmllib.SGMLParser@{Milter.sgmllib.SGMLParser}!\_\_init\_\_@{\_\_init\_\_}}
\index{\_\_init\_\_@{\_\_init\_\_}!Milter.sgmllib.SGMLParser@{Milter.sgmllib.SGMLParser}}
\doxysubsubsection{\_\_init\_\_()}
{\footnotesize\ttfamily def Milter.\+sgmllib.\+SGMLParser.\+\_\+\+\_\+init\+\_\+\+\_\+ (\begin{DoxyParamCaption}\item[{}]{self,  }\item[{}]{verbose = {\ttfamily 0} }\end{DoxyParamCaption})}

\begin{DoxyVerb}Initialize and reset this instance.\end{DoxyVerb}
 

Reimplemented in \textbf{ Milter.\+sgmllib.\+Test\+SGMLParser} \doxyref{}{p.}{classMilter_1_1sgmllib_1_1TestSGMLParser_a0432eb219f2600c949ddc880ce8e03f4}.



References Milter.\+sgmllib.\+SGMLParser.\+reset(), and Milter.\+sgmllib.\+SGMLParser.\+verbose.



\doxysubsection{Member Function Documentation}
\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_a3159af76b68577306b15fd30f124fd4c}} 
\index{Milter.sgmllib.SGMLParser@{Milter.sgmllib.SGMLParser}!close@{close}}
\index{close@{close}!Milter.sgmllib.SGMLParser@{Milter.sgmllib.SGMLParser}}
\doxysubsubsection{close()}
{\footnotesize\ttfamily def Milter.\+sgmllib.\+SGMLParser.\+close (\begin{DoxyParamCaption}\item[{}]{self }\end{DoxyParamCaption})}

\begin{DoxyVerb}Handle the remaining data.\end{DoxyVerb}
 

Reimplemented in \textbf{ Milter.\+sgmllib.\+Test\+SGMLParser} \doxyref{}{p.}{classMilter_1_1sgmllib_1_1TestSGMLParser_a684731ef80e00f24d68ce08d0b7aeece}.



References Milter.\+sgmllib.\+SGMLParser.\+\_\+\+\_\+starttag\+\_\+text, Milter.\+sgmllib.\+SGMLParser.\+\_\+convert\+\_\+ref(), Milter.\+sgmllib.\+SGMLParser.\+convert\+\_\+charref(), Milter.\+sgmllib.\+SGMLParser.\+convert\+\_\+entityref(), Milter.\+sgmllib.\+SGMLParser.\+entity\+\_\+or\+\_\+charref, Milter.\+sgmllib.\+SGMLParser.\+error(), Milter.\+sgmllib.\+SGMLParser.\+finish\+\_\+endtag(), Milter.\+sgmllib.\+SGMLParser.\+finish\+\_\+shorttag(), Milter.\+sgmllib.\+SGMLParser.\+finish\+\_\+starttag(), Milter.\+sgmllib.\+SGMLParser.\+goahead(), Milter.\+sgmllib.\+SGMLParser.\+handle\+\_\+charref(), mime.\+SGMLFilter.\+handle\+\_\+charref(), Milter.\+sgmllib.\+SGMLParser.\+handle\+\_\+data(), Milter.\+sgmllib.\+Test\+SGMLParser.\+handle\+\_\+data(), mime.\+SGMLFilter.\+handle\+\_\+data(), mime.\+HTMLScript\+Filter.\+handle\+\_\+data(), Milter.\+sgmllib.\+SGMLParser.\+handle\+\_\+endtag(), Milter.\+sgmllib.\+SGMLParser.\+handle\+\_\+entityref(), mime.\+SGMLFilter.\+handle\+\_\+entityref(), Milter.\+sgmllib.\+SGMLParser.\+handle\+\_\+pi(), Milter.\+sgmllib.\+SGMLParser.\+handle\+\_\+starttag(), Milter.\+sgmllib.\+SGMLParser.\+lasttag, Milter.\+sgmllib.\+SGMLParser.\+literal, Milter.\+sgmllib.\+SGMLParser.\+nomoretags, mime.\+SGMLFilter.\+parse\+\_\+declaration(), Milter.\+sgmllib.\+SGMLParser.\+parse\+\_\+endtag(), Milter.\+sgmllib.\+SGMLParser.\+parse\+\_\+pi(), Milter.\+sgmllib.\+SGMLParser.\+parse\+\_\+starttag(), Milter.\+sgmllib.\+SGMLParser.\+rawdata, Milter.\+sgmllib.\+SGMLParser.\+report\+\_\+unbalanced(), Milter.\+sgmllib.\+SGMLParser.\+stack, Milter.\+sgmllib.\+SGMLParser.\+unknown\+\_\+endtag(), Milter.\+sgmllib.\+Test\+SGMLParser.\+unknown\+\_\+endtag(), mime.\+SGMLFilter.\+unknown\+\_\+endtag(), mime.\+SGMLFilter.\+unknown\+\_\+starttag(), Milter.\+sgmllib.\+SGMLParser.\+unknown\+\_\+starttag(), Milter.\+sgmllib.\+Test\+SGMLParser.\+unknown\+\_\+starttag(), and Milter.\+sgmllib.\+SGMLParser.\+verbose.



Referenced by Milter.\+test.\+Test\+Base.\+connect(), and Milter.\+test.\+Test\+Base.\+feed\+File().

\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_a9b7fd5fce2102579c4a23a44df8630eb}} 
\index{Milter.sgmllib.SGMLParser@{Milter.sgmllib.SGMLParser}!convert\_charref@{convert\_charref}}
\index{convert\_charref@{convert\_charref}!Milter.sgmllib.SGMLParser@{Milter.sgmllib.SGMLParser}}
\doxysubsubsection{convert\_charref()}
{\footnotesize\ttfamily def Milter.\+sgmllib.\+SGMLParser.\+convert\+\_\+charref (\begin{DoxyParamCaption}\item[{}]{self,  }\item[{}]{name }\end{DoxyParamCaption})}

\begin{DoxyVerb}Convert character reference, may be overridden.\end{DoxyVerb}
 

References Milter.\+sgmllib.\+SGMLParser.\+convert\+\_\+codepoint().



Referenced by Milter.\+sgmllib.\+SGMLParser.\+close(), and Milter.\+sgmllib.\+SGMLParser.\+handle\+\_\+charref().

\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_a6c56b3f9a93816501212f97cac4e5584}} 
\index{Milter.sgmllib.SGMLParser@{Milter.sgmllib.SGMLParser}!convert\_entityref@{convert\_entityref}}
\index{convert\_entityref@{convert\_entityref}!Milter.sgmllib.SGMLParser@{Milter.sgmllib.SGMLParser}}
\doxysubsubsection{convert\_entityref()}
{\footnotesize\ttfamily def Milter.\+sgmllib.\+SGMLParser.\+convert\+\_\+entityref (\begin{DoxyParamCaption}\item[{}]{self,  }\item[{}]{name }\end{DoxyParamCaption})}

\begin{DoxyVerb}Convert entity references.

As an alternative to overriding this method; one can tailor the
results by setting up the self.entitydefs mapping appropriately.
\end{DoxyVerb}
 

References Milter.\+sgmllib.\+SGMLParser.\+entitydefs.



Referenced by Milter.\+sgmllib.\+SGMLParser.\+close(), and Milter.\+sgmllib.\+SGMLParser.\+handle\+\_\+entityref().

\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_a6a4a0d36e4503739cc180691ffad86d6}} 
\index{Milter.sgmllib.SGMLParser@{Milter.sgmllib.SGMLParser}!feed@{feed}}
\index{feed@{feed}!Milter.sgmllib.SGMLParser@{Milter.sgmllib.SGMLParser}}
\doxysubsubsection{feed()}
{\footnotesize\ttfamily def Milter.\+sgmllib.\+SGMLParser.\+feed (\begin{DoxyParamCaption}\item[{}]{self,  }\item[{}]{data }\end{DoxyParamCaption})}

\begin{DoxyVerb}Feed some data to the parser.

Call this as often as you want, with as little or as much text
as you want (may include '\n').  (This just saves the text,
all the processing is done by goahead().)
\end{DoxyVerb}
 

References Milter.\+sgmllib.\+SGMLParser.\+goahead(), and Milter.\+sgmllib.\+SGMLParser.\+rawdata.

\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_a024aa207a62a0441a6a027d2792494d1}} 
\index{Milter.sgmllib.SGMLParser@{Milter.sgmllib.SGMLParser}!handle\_charref@{handle\_charref}}
\index{handle\_charref@{handle\_charref}!Milter.sgmllib.SGMLParser@{Milter.sgmllib.SGMLParser}}
\doxysubsubsection{handle\_charref()}
{\footnotesize\ttfamily def Milter.\+sgmllib.\+SGMLParser.\+handle\+\_\+charref (\begin{DoxyParamCaption}\item[{}]{self,  }\item[{}]{name }\end{DoxyParamCaption})}

\begin{DoxyVerb}Handle character reference, no need to override.\end{DoxyVerb}
 

References Milter.\+sgmllib.\+SGMLParser.\+convert\+\_\+charref(), Milter.\+sgmllib.\+SGMLParser.\+handle\+\_\+data(), Milter.\+sgmllib.\+Test\+SGMLParser.\+handle\+\_\+data(), mime.\+SGMLFilter.\+handle\+\_\+data(), mime.\+HTMLScript\+Filter.\+handle\+\_\+data(), Milter.\+sgmllib.\+SGMLParser.\+unknown\+\_\+charref(), and Milter.\+sgmllib.\+Test\+SGMLParser.\+unknown\+\_\+charref().



Referenced by Milter.\+sgmllib.\+SGMLParser.\+close().

\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_ae37e46c7501054984d944bbffe2bf985}} 
\index{Milter.sgmllib.SGMLParser@{Milter.sgmllib.SGMLParser}!handle\_entityref@{handle\_entityref}}
\index{handle\_entityref@{handle\_entityref}!Milter.sgmllib.SGMLParser@{Milter.sgmllib.SGMLParser}}
\doxysubsubsection{handle\_entityref()}
{\footnotesize\ttfamily def Milter.\+sgmllib.\+SGMLParser.\+handle\+\_\+entityref (\begin{DoxyParamCaption}\item[{}]{self,  }\item[{}]{name }\end{DoxyParamCaption})}

\begin{DoxyVerb}Handle entity references, no need to override.\end{DoxyVerb}
 

References Milter.\+sgmllib.\+SGMLParser.\+convert\+\_\+entityref(), Milter.\+sgmllib.\+SGMLParser.\+handle\+\_\+data(), Milter.\+sgmllib.\+Test\+SGMLParser.\+handle\+\_\+data(), mime.\+SGMLFilter.\+handle\+\_\+data(), mime.\+HTMLScript\+Filter.\+handle\+\_\+data(), Milter.\+sgmllib.\+SGMLParser.\+unknown\+\_\+entityref(), and Milter.\+sgmllib.\+Test\+SGMLParser.\+unknown\+\_\+entityref().



Referenced by Milter.\+sgmllib.\+SGMLParser.\+close().

\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_ac67ee2a5c1f7d7a945cf52a372007160}} 
\index{Milter.sgmllib.SGMLParser@{Milter.sgmllib.SGMLParser}!reset@{reset}}
\index{reset@{reset}!Milter.sgmllib.SGMLParser@{Milter.sgmllib.SGMLParser}}
\doxysubsubsection{reset()}
{\footnotesize\ttfamily def Milter.\+sgmllib.\+SGMLParser.\+reset (\begin{DoxyParamCaption}\item[{}]{self }\end{DoxyParamCaption})}

\begin{DoxyVerb}Reset this instance. Loses all unprocessed data.\end{DoxyVerb}
 

References Milter.\+sgmllib.\+SGMLParser.\+\_\+\+\_\+starttag\+\_\+text, Milter.\+sgmllib.\+SGMLParser.\+lasttag, Milter.\+sgmllib.\+SGMLParser.\+literal, Milter.\+sgmllib.\+SGMLParser.\+nomoretags, Milter.\+sgmllib.\+SGMLParser.\+rawdata, and Milter.\+sgmllib.\+SGMLParser.\+stack.



Referenced by Milter.\+sgmllib.\+SGMLParser.\+\_\+\+\_\+init\+\_\+\+\_\+().

\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_ab9f3a22a8ac48d38e5961e201d69adcb}} 
\index{Milter.sgmllib.SGMLParser@{Milter.sgmllib.SGMLParser}!setliteral@{setliteral}}
\index{setliteral@{setliteral}!Milter.sgmllib.SGMLParser@{Milter.sgmllib.SGMLParser}}
\doxysubsubsection{setliteral()}
{\footnotesize\ttfamily def Milter.\+sgmllib.\+SGMLParser.\+setliteral (\begin{DoxyParamCaption}\item[{}]{self,  }\item[{$\ast$}]{args }\end{DoxyParamCaption})}

\begin{DoxyVerb}Enter literal mode (CDATA).

Intended for derived classes only.
\end{DoxyVerb}
 

References Milter.\+sgmllib.\+SGMLParser.\+literal.

\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_af2af4fa9c2100623a639a204cfb832e4}} 
\index{Milter.sgmllib.SGMLParser@{Milter.sgmllib.SGMLParser}!setnomoretags@{setnomoretags}}
\index{setnomoretags@{setnomoretags}!Milter.sgmllib.SGMLParser@{Milter.sgmllib.SGMLParser}}
\doxysubsubsection{setnomoretags()}
{\footnotesize\ttfamily def Milter.\+sgmllib.\+SGMLParser.\+setnomoretags (\begin{DoxyParamCaption}\item[{}]{self }\end{DoxyParamCaption})}

\begin{DoxyVerb}Enter literal mode (CDATA) till EOF.

Intended for derived classes only.
\end{DoxyVerb}
 

References Milter.\+sgmllib.\+SGMLParser.\+literal, and Milter.\+sgmllib.\+SGMLParser.\+nomoretags.



\doxysubsection{Member Data Documentation}
\mbox{\label{classMilter_1_1sgmllib_1_1SGMLParser_ae2f374c74c81bdd3d9bc1cc4424ce110}} 
\index{Milter.sgmllib.SGMLParser@{Milter.sgmllib.SGMLParser}!entity\_or\_charref@{entity\_or\_charref}}
\index{entity\_or\_charref@{entity\_or\_charref}!Milter.sgmllib.SGMLParser@{Milter.sgmllib.SGMLParser}}
\doxysubsubsection{entity\_or\_charref}
{\footnotesize\ttfamily Milter.\+sgmllib.\+SGMLParser.\+entity\+\_\+or\+\_\+charref\hspace{0.3cm}{\ttfamily [static]}}

{\bfseries Initial value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{=  re.compile(\textcolor{stringliteral}{'\&(?:'}}
\DoxyCodeLine{      \textcolor{stringliteral}{'([a-\/zA-\/Z][-\/.a-\/zA-\/Z0-\/9]*)|\#([0-\/9]+)'}}
\DoxyCodeLine{      \textcolor{stringliteral}{')(;?)'})}

\end{DoxyCode}


Referenced by Milter.\+sgmllib.\+SGMLParser.\+close().



The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
Milter/sgmllib.\+py\end{DoxyCompactItemize}
