\hypertarget{class_qore_1_1_abstract_bidirectional_iterator}{}\section{Qore\+:\+:Abstract\+Bidirectional\+Iterator Class Reference}
\label{class_qore_1_1_abstract_bidirectional_iterator}\index{Qore\+::\+Abstract\+Bidirectional\+Iterator@{Qore\+::\+Abstract\+Bidirectional\+Iterator}}


This class defines an abstract interface for bidirectional iterators.  




Inheritance diagram for Qore\+:\+:Abstract\+Bidirectional\+Iterator\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{class_qore_1_1_abstract_bidirectional_iterator__inherit__graph}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
abstract bool \hyperlink{class_qore_1_1_abstract_bidirectional_iterator_a8ca43ac8bffc78178f61e3cca9b6323e}{prev} ()
\begin{DoxyCompactList}\small\item\em Moves the current position to the previous element; returns \hyperlink{group__boolean__constants_ga9da2b9a8003cd3788e48305f8a00540f}{False} if there are no more elements. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
This class defines an abstract interface for bidirectional iterators. 

\subsection{Member Function Documentation}
\mbox{\Hypertarget{class_qore_1_1_abstract_bidirectional_iterator_a8ca43ac8bffc78178f61e3cca9b6323e}\label{class_qore_1_1_abstract_bidirectional_iterator_a8ca43ac8bffc78178f61e3cca9b6323e}} 
\index{Qore\+::\+Abstract\+Bidirectional\+Iterator@{Qore\+::\+Abstract\+Bidirectional\+Iterator}!prev@{prev}}
\index{prev@{prev}!Qore\+::\+Abstract\+Bidirectional\+Iterator@{Qore\+::\+Abstract\+Bidirectional\+Iterator}}
\subsubsection{\texorpdfstring{prev()}{prev()}}
{\footnotesize\ttfamily abstract bool Qore\+::\+Abstract\+Bidirectional\+Iterator\+::prev (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}}



Moves the current position to the previous element; returns \hyperlink{group__boolean__constants_ga9da2b9a8003cd3788e48305f8a00540f}{False} if there are no more elements. 

This method will return \hyperlink{group__boolean__constants_ga3ba2df91713a6249449347131ea526c3}{True} again after it returns \hyperlink{group__boolean__constants_ga9da2b9a8003cd3788e48305f8a00540f}{False} once if the object being iterated is not empty, otherwise it will always return \hyperlink{group__boolean__constants_ga9da2b9a8003cd3788e48305f8a00540f}{False}. The iterator object should not be used after this method returns \hyperlink{group__boolean__constants_ga9da2b9a8003cd3788e48305f8a00540f}{False}

\begin{DoxyReturn}{Returns}
\hyperlink{group__boolean__constants_ga9da2b9a8003cd3788e48305f8a00540f}{False} if there are no more elements (in which case the iterator object is invalid and should not be used); \hyperlink{group__boolean__constants_ga3ba2df91713a6249449347131ea526c3}{True} if successful (meaning that the iterator object is valid)
\end{DoxyReturn}
\begin{DoxyParagraph}{Example\+:}

\begin{DoxyCode}
\textcolor{keywordflow}{while} (i.prev()) \{
    \hyperlink{group__string__functions_ga32070517a9f8a70a32ef48f83a6f128e}{printf}(\textcolor{stringliteral}{" + %y\(\backslash\)n"}, i.getValue());
\}
\end{DoxyCode}

\end{DoxyParagraph}
\begin{DoxyNote}{Note}
this method is basically the opposite to \hyperlink{class_qore_1_1_abstract_iterator_ab10d5694cc2fcd3b6689ea7494da79de}{Abstract\+Iterator\+::next()} 
\end{DoxyNote}


Implemented in \hyperlink{class_qore_1_1_hash_list_iterator_a6df21aadae44817005795b3b6190874a}{Qore\+::\+Hash\+List\+Iterator}, \hyperlink{class_qore_1_1_list_hash_iterator_af422c1925e9f9d659da0987afbdb93e7}{Qore\+::\+List\+Hash\+Iterator}, \hyperlink{class_qore_1_1_hash_iterator_a9df83a19c89100056c875b2ca40f6ed3}{Qore\+::\+Hash\+Iterator}, \hyperlink{class_qore_1_1_list_iterator_a32ad9cb8256759fdf8ac4dd3af183222}{Qore\+::\+List\+Iterator}, \hyperlink{class_qore_1_1_hash_list_reverse_iterator_a3bc985ec634ecd6d3501ad27e5c1461c}{Qore\+::\+Hash\+List\+Reverse\+Iterator}, \hyperlink{class_qore_1_1_list_hash_reverse_iterator_a075a0a4b3a2e4aa664bd70541a6b4f33}{Qore\+::\+List\+Hash\+Reverse\+Iterator}, \hyperlink{class_qore_1_1_object_reverse_iterator_a8eb6d967f85d306e897e08deadd63c92}{Qore\+::\+Object\+Reverse\+Iterator}, \hyperlink{class_qore_1_1_hash_reverse_iterator_a04c6aa78e4bcf4bd7fcd0a0d1964d427}{Qore\+::\+Hash\+Reverse\+Iterator}, and \hyperlink{class_qore_1_1_list_reverse_iterator_aae132f219a250cedb11bcf67995422dc}{Qore\+::\+List\+Reverse\+Iterator}.

