\hypertarget{votStack_8c}{
\section{votStack.c File Reference}
\label{votStack_8c}\index{votStack.c@{votStack.c}}
}
(Private) Methods to manage the parser \hyperlink{structElement}{Element} stack.  


{\tt \#include $<$stdio.h$>$}\par
{\tt \#include $<$stdlib.h$>$}\par
{\tt \#include $<$unistd.h$>$}\par
{\tt \#include $<$strings.h$>$}\par
{\tt \#include \char`\"{}votParseP.h\char`\"{}}\par
\subsection*{Functions}
\begin{CompactItemize}
\item 
\hyperlink{structStack}{Stack} $\ast$ \hyperlink{votStack_8c_4a7f5a306e9f1c1cf35ec9605c92d42f}{vot\_\-newStack} (void)
\begin{CompactList}\small\item\em Makes a new stack (private method). \item\end{CompactList}\item 
\hyperlink{structElement}{Element} $\ast$ \hyperlink{votStack_8c_9e1d4fd4b9c06ddbd95f4029b0f8d3a5}{votPop} (\hyperlink{structStack}{Stack} $\ast$st)
\begin{CompactList}\small\item\em Return a \hyperlink{structNode}{Node} from the top of the stack (private method). \item\end{CompactList}\item 
void \hyperlink{votStack_8c_fb95db917a89f2d55ae6522435929229}{votPush} (\hyperlink{structStack}{Stack} $\ast$st, \hyperlink{structElement}{Element} $\ast$elem)
\begin{CompactList}\small\item\em Push a \hyperlink{structNode}{Node} to the top of the stack (private method). \item\end{CompactList}\item 
\hyperlink{structElement}{Element} $\ast$ \hyperlink{votStack_8c_ded18f1ce833d773a50e2d1a4a2db2c8}{votPeek} (\hyperlink{structStack}{Stack} $\ast$st)
\begin{CompactList}\small\item\em Peek at \hyperlink{structElement}{Element} on top of the \hyperlink{structStack}{Stack} (private method). \item\end{CompactList}\item 
int \hyperlink{votStack_8c_11691bde61e5b2bbdea3649eb69d8253}{vot\_\-isEmpty} (\hyperlink{structStack}{Stack} $\ast$st)
\begin{CompactList}\small\item\em Checks to see if the stack is empty (private method). \item\end{CompactList}\item 
void \hyperlink{votStack_8c_c5e777e900166c7c7a79eeb28f838f61}{vot\_\-clearStack} (\hyperlink{structStack}{Stack} $\ast$st)
\begin{CompactList}\small\item\em Clear the stack (private method). \item\end{CompactList}\item 
void \hyperlink{votStack_8c_db67217b47d7871eee607df6754dfa88}{vot\_\-printStack} (\hyperlink{structStack}{Stack} $\ast$st)
\begin{CompactList}\small\item\em Print the name of all the stack elements (private method). \item\end{CompactList}\end{CompactItemize}


\label{_details}
\hypertarget{_details}{}
\subsection{Detailed Description}
(Private) Methods to manage the parser \hyperlink{structElement}{Element} stack. 

VOTSTACK.C -- (Private) Methods to manage the parser \hyperlink{structElement}{Element} stack.

\begin{Desc}
\item[Author:]Mike Fitzpatrick and Eric Timmermann \end{Desc}
\begin{Desc}
\item[Date:]8/03/09 \end{Desc}


\subsection{Function Documentation}
\hypertarget{votStack_8c_c5e777e900166c7c7a79eeb28f838f61}{
\index{votStack.c@{votStack.c}!vot\_\-clearStack@{vot\_\-clearStack}}
\index{vot\_\-clearStack@{vot\_\-clearStack}!votStack.c@{votStack.c}}
\subsubsection[{vot\_\-clearStack}]{\setlength{\rightskip}{0pt plus 5cm}void vot\_\-clearStack ({\bf Stack} $\ast$ {\em st})}}
\label{votStack_8c_c5e777e900166c7c7a79eeb28f838f61}


Clear the stack (private method). 

vot\_\-clearStack -- Clear the stack (private method)

\begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em st}]A pointer to a \hyperlink{structStack}{Stack} \end{description}
\end{Desc}
\begin{Desc}
\item[Returns:]nothing \end{Desc}
\hypertarget{votStack_8c_11691bde61e5b2bbdea3649eb69d8253}{
\index{votStack.c@{votStack.c}!vot\_\-isEmpty@{vot\_\-isEmpty}}
\index{vot\_\-isEmpty@{vot\_\-isEmpty}!votStack.c@{votStack.c}}
\subsubsection[{vot\_\-isEmpty}]{\setlength{\rightskip}{0pt plus 5cm}int vot\_\-isEmpty ({\bf Stack} $\ast$ {\em st})}}
\label{votStack_8c_11691bde61e5b2bbdea3649eb69d8253}


Checks to see if the stack is empty (private method). 

vot\_\-isEmpty -- Checks to see if the stack is empty (private method)

\begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em st}]A pointer to a \hyperlink{structStack}{Stack} \end{description}
\end{Desc}
\begin{Desc}
\item[Returns:]{\em 1\/} if true, {\em 0\/} if false. \end{Desc}
\hypertarget{votStack_8c_4a7f5a306e9f1c1cf35ec9605c92d42f}{
\index{votStack.c@{votStack.c}!vot\_\-newStack@{vot\_\-newStack}}
\index{vot\_\-newStack@{vot\_\-newStack}!votStack.c@{votStack.c}}
\subsubsection[{vot\_\-newStack}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Stack}$\ast$ vot\_\-newStack (void)}}
\label{votStack_8c_4a7f5a306e9f1c1cf35ec9605c92d42f}


Makes a new stack (private method). 

vot\_\-newStack -- Makes a new stack (private method)

\begin{Desc}
\item[Returns:]A pointer to a new \hyperlink{structStack}{Stack}. \end{Desc}
\hypertarget{votStack_8c_db67217b47d7871eee607df6754dfa88}{
\index{votStack.c@{votStack.c}!vot\_\-printStack@{vot\_\-printStack}}
\index{vot\_\-printStack@{vot\_\-printStack}!votStack.c@{votStack.c}}
\subsubsection[{vot\_\-printStack}]{\setlength{\rightskip}{0pt plus 5cm}void vot\_\-printStack ({\bf Stack} $\ast$ {\em st})}}
\label{votStack_8c_db67217b47d7871eee607df6754dfa88}


Print the name of all the stack elements (private method). 

vot\_\-printStack -- Print the name of all the stack elements (private method)

\begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em st}]A pointer to a \hyperlink{structStack}{Stack} \end{description}
\end{Desc}
\begin{Desc}
\item[Returns:]nothing \end{Desc}
\hypertarget{votStack_8c_ded18f1ce833d773a50e2d1a4a2db2c8}{
\index{votStack.c@{votStack.c}!votPeek@{votPeek}}
\index{votPeek@{votPeek}!votStack.c@{votStack.c}}
\subsubsection[{votPeek}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Element}$\ast$ votPeek ({\bf Stack} $\ast$ {\em st})}}
\label{votStack_8c_ded18f1ce833d773a50e2d1a4a2db2c8}


Peek at \hyperlink{structElement}{Element} on top of the \hyperlink{structStack}{Stack} (private method). 

votPeek -- Peek at \hyperlink{structElement}{Element} on top of the \hyperlink{structStack}{Stack} (private method)

\begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em st}]A pointer to a \hyperlink{structStack}{Stack} \end{description}
\end{Desc}
\begin{Desc}
\item[Returns:]A pointer to the head \hyperlink{structElement}{Element}, or NULL if empty \end{Desc}
\hypertarget{votStack_8c_9e1d4fd4b9c06ddbd95f4029b0f8d3a5}{
\index{votStack.c@{votStack.c}!votPop@{votPop}}
\index{votPop@{votPop}!votStack.c@{votStack.c}}
\subsubsection[{votPop}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Element}$\ast$ votPop ({\bf Stack} $\ast$ {\em st})}}
\label{votStack_8c_9e1d4fd4b9c06ddbd95f4029b0f8d3a5}


Return a \hyperlink{structNode}{Node} from the top of the stack (private method). 

votPop -- Return a \hyperlink{structNode}{Node} from the top of the stack (private method)

\begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em st}]A pointer to a \hyperlink{structStack}{Stack} \end{description}
\end{Desc}
\begin{Desc}
\item[Returns:]A pointer to the popped \hyperlink{structElement}{Element}. \end{Desc}
\hypertarget{votStack_8c_fb95db917a89f2d55ae6522435929229}{
\index{votStack.c@{votStack.c}!votPush@{votPush}}
\index{votPush@{votPush}!votStack.c@{votStack.c}}
\subsubsection[{votPush}]{\setlength{\rightskip}{0pt plus 5cm}void votPush ({\bf Stack} $\ast$ {\em st}, \/  {\bf Element} $\ast$ {\em elem})}}
\label{votStack_8c_fb95db917a89f2d55ae6522435929229}


Push a \hyperlink{structNode}{Node} to the top of the stack (private method). 

votPush -- Push a \hyperlink{structNode}{Node} to the top of the stack (private method)

\begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em st}]A pointer to a \hyperlink{structStack}{Stack} \item[{\em elem}]A pointer to an element to be put on the stack \end{description}
\end{Desc}
\begin{Desc}
\item[Returns:]nothing \end{Desc}
