\hypertarget{class_qore_1_1_abstract_quantified_iterator}{}\doxysection{Qore\+::Abstract\+Quantified\+Iterator Class Reference}
\label{class_qore_1_1_abstract_quantified_iterator}\index{Qore::AbstractQuantifiedIterator@{Qore::AbstractQuantifiedIterator}}


This class defines an abstract interface for iterators where the size of the object being iterated is known in advance.  




{\ttfamily \#include $<$QC\+\_\+\+Abstract\+Quantified\+Iterator.\+dox.\+h$>$}



Inheritance diagram for Qore\+::Abstract\+Quantified\+Iterator\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{class_qore_1_1_abstract_quantified_iterator__inherit__graph}
\end{center}
\end{figure}
\doxysubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
abstract bool \mbox{\hyperlink{class_qore_1_1_abstract_quantified_iterator_aa859f2f4a719f955b100cde8b65b3277}{empty}} ()
\begin{DoxyCompactList}\small\item\em returns \mbox{\hyperlink{basic_data_types_True}{True}} if the object to iterate is empty; \mbox{\hyperlink{basic_data_types_False}{False}} if not \end{DoxyCompactList}\item 
abstract bool \mbox{\hyperlink{class_qore_1_1_abstract_quantified_iterator_a4264e42010fa08a8099692e2876c3241}{first}} ()
\begin{DoxyCompactList}\small\item\em returns \mbox{\hyperlink{basic_data_types_True}{True}} if on the first element \end{DoxyCompactList}\item 
abstract bool \mbox{\hyperlink{class_qore_1_1_abstract_quantified_iterator_aa7bef0cd843ced4319fd5f0d7647ef8e}{last}} ()
\begin{DoxyCompactList}\small\item\em returns \mbox{\hyperlink{basic_data_types_True}{True}} if on the last element \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
This class defines an abstract interface for iterators where the size of the object being iterated is known in advance. 

\doxysubsection{Member Function Documentation}
\mbox{\Hypertarget{class_qore_1_1_abstract_quantified_iterator_aa859f2f4a719f955b100cde8b65b3277}\label{class_qore_1_1_abstract_quantified_iterator_aa859f2f4a719f955b100cde8b65b3277}} 
\index{Qore::AbstractQuantifiedIterator@{Qore::AbstractQuantifiedIterator}!empty@{empty}}
\index{empty@{empty}!Qore::AbstractQuantifiedIterator@{Qore::AbstractQuantifiedIterator}}
\doxysubsubsection{\texorpdfstring{empty()}{empty()}}
{\footnotesize\ttfamily abstract bool Qore\+::\+Abstract\+Quantified\+Iterator\+::empty (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}}



returns \mbox{\hyperlink{basic_data_types_True}{True}} if the object to iterate is empty; \mbox{\hyperlink{basic_data_types_False}{False}} if not 

\begin{DoxyReturn}{Returns}
\mbox{\hyperlink{basic_data_types_True}{True}} if the object to iterate is empty; \mbox{\hyperlink{basic_data_types_False}{False}} if not
\end{DoxyReturn}
\begin{DoxyParagraph}{Example\+:}

\begin{DoxyCode}{0}
\DoxyCodeLine{\textcolor{keywordflow}{if} (i.empty())}
\DoxyCodeLine{    printf(\textcolor{stringliteral}{"{}object is empty\(\backslash\)n"{}});}

\end{DoxyCode}
 
\end{DoxyParagraph}


Implemented in \mbox{\hyperlink{class_qore_1_1_hash_iterator_adc2400ed775808e5ab8a3afd671c4428}{Qore\+::\+Hash\+Iterator}}, \mbox{\hyperlink{class_qore_1_1_hash_list_iterator_a2613a8ee70fde08923b43a228a44a36e}{Qore\+::\+Hash\+List\+Iterator}}, \mbox{\hyperlink{class_qore_1_1_list_hash_iterator_acbf9ae3d6d10b3007cd9b718fa88d1b8}{Qore\+::\+List\+Hash\+Iterator}}, and \mbox{\hyperlink{class_qore_1_1_list_iterator_a6b122999ed1d5270b799d08389d6a4b8}{Qore\+::\+List\+Iterator}}.

\mbox{\Hypertarget{class_qore_1_1_abstract_quantified_iterator_a4264e42010fa08a8099692e2876c3241}\label{class_qore_1_1_abstract_quantified_iterator_a4264e42010fa08a8099692e2876c3241}} 
\index{Qore::AbstractQuantifiedIterator@{Qore::AbstractQuantifiedIterator}!first@{first}}
\index{first@{first}!Qore::AbstractQuantifiedIterator@{Qore::AbstractQuantifiedIterator}}
\doxysubsubsection{\texorpdfstring{first()}{first()}}
{\footnotesize\ttfamily abstract bool Qore\+::\+Abstract\+Quantified\+Iterator\+::first (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}}



returns \mbox{\hyperlink{basic_data_types_True}{True}} if on the first element 

\begin{DoxyReturn}{Returns}
\mbox{\hyperlink{basic_data_types_True}{True}} if on the first element
\end{DoxyReturn}
\begin{DoxyParagraph}{Example\+:}

\begin{DoxyCode}{0}
\DoxyCodeLine{\textcolor{keywordflow}{while} (i.next()) \{}
\DoxyCodeLine{    \textcolor{keywordflow}{if} (i.first())}
\DoxyCodeLine{        printf(\textcolor{stringliteral}{"{}START:\(\backslash\)n"{}});}
\DoxyCodeLine{\}}

\end{DoxyCode}
 
\end{DoxyParagraph}


Implemented in \mbox{\hyperlink{class_qore_1_1_hash_iterator_a1d639332a9f27f97a830994b1a68ada2}{Qore\+::\+Hash\+Iterator}}, \mbox{\hyperlink{class_qore_1_1_hash_list_iterator_aef0ec0e0df43f4f8f8ba5899a53674d1}{Qore\+::\+Hash\+List\+Iterator}}, \mbox{\hyperlink{class_qore_1_1_hash_list_reverse_iterator_a3dfbb6e8ea42a650bd063403d4efa3be}{Qore\+::\+Hash\+List\+Reverse\+Iterator}}, \mbox{\hyperlink{class_qore_1_1_hash_reverse_iterator_ac7cf3e0eda0c8f4854e3dd6fab31a1ab}{Qore\+::\+Hash\+Reverse\+Iterator}}, \mbox{\hyperlink{class_qore_1_1_list_hash_iterator_a4e7a345f24263766e7cdac8eeae903ef}{Qore\+::\+List\+Hash\+Iterator}}, \mbox{\hyperlink{class_qore_1_1_list_hash_reverse_iterator_aa54754072fd1532f651013abf7f0cf6f}{Qore\+::\+List\+Hash\+Reverse\+Iterator}}, \mbox{\hyperlink{class_qore_1_1_list_iterator_a93b82a5f331015eacbc41114005af1c0}{Qore\+::\+List\+Iterator}}, \mbox{\hyperlink{class_qore_1_1_list_reverse_iterator_a2e8154d62fdeb3d8f08b3b26c048f24b}{Qore\+::\+List\+Reverse\+Iterator}}, and \mbox{\hyperlink{class_qore_1_1_object_reverse_iterator_a6f053540cbbc574c438e6201b713f7dd}{Qore\+::\+Object\+Reverse\+Iterator}}.

\mbox{\Hypertarget{class_qore_1_1_abstract_quantified_iterator_aa7bef0cd843ced4319fd5f0d7647ef8e}\label{class_qore_1_1_abstract_quantified_iterator_aa7bef0cd843ced4319fd5f0d7647ef8e}} 
\index{Qore::AbstractQuantifiedIterator@{Qore::AbstractQuantifiedIterator}!last@{last}}
\index{last@{last}!Qore::AbstractQuantifiedIterator@{Qore::AbstractQuantifiedIterator}}
\doxysubsubsection{\texorpdfstring{last()}{last()}}
{\footnotesize\ttfamily abstract bool Qore\+::\+Abstract\+Quantified\+Iterator\+::last (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}}



returns \mbox{\hyperlink{basic_data_types_True}{True}} if on the last element 

\begin{DoxyReturn}{Returns}
\mbox{\hyperlink{basic_data_types_True}{True}} if on the last element
\end{DoxyReturn}
\begin{DoxyParagraph}{Example\+:}

\begin{DoxyCode}{0}
\DoxyCodeLine{\textcolor{keywordflow}{while} (i.next()) \{}
\DoxyCodeLine{    \textcolor{keywordflow}{if} (i.last())}
\DoxyCodeLine{        printf(\textcolor{stringliteral}{"{}END.\(\backslash\)n"{}});}
\DoxyCodeLine{\}}

\end{DoxyCode}
 
\end{DoxyParagraph}


Implemented in \mbox{\hyperlink{class_qore_1_1_hash_iterator_a40b7935be4791e186dba782e091084e5}{Qore\+::\+Hash\+Iterator}}, \mbox{\hyperlink{class_qore_1_1_hash_list_iterator_a1c2d63097f58f35538bb45138262959b}{Qore\+::\+Hash\+List\+Iterator}}, \mbox{\hyperlink{class_qore_1_1_hash_list_reverse_iterator_aae133b11d7e847766be7aff7face0fa0}{Qore\+::\+Hash\+List\+Reverse\+Iterator}}, \mbox{\hyperlink{class_qore_1_1_hash_reverse_iterator_aec930a3efe298b98eeda8670c132dd8f}{Qore\+::\+Hash\+Reverse\+Iterator}}, \mbox{\hyperlink{class_qore_1_1_list_hash_iterator_a849e526feaa79ce62c920267ec35eab4}{Qore\+::\+List\+Hash\+Iterator}}, \mbox{\hyperlink{class_qore_1_1_list_hash_reverse_iterator_a45a4fb06056965aa986e416a5860e005}{Qore\+::\+List\+Hash\+Reverse\+Iterator}}, \mbox{\hyperlink{class_qore_1_1_list_iterator_ab42d03f4202ae21cbf50732c93a206c2}{Qore\+::\+List\+Iterator}}, \mbox{\hyperlink{class_qore_1_1_list_reverse_iterator_a33bf7f6114d76f5c1b8c80a5d7dc6fac}{Qore\+::\+List\+Reverse\+Iterator}}, and \mbox{\hyperlink{class_qore_1_1_object_reverse_iterator_a96a5d6b421ccbe6875ca2f3fbfe7576d}{Qore\+::\+Object\+Reverse\+Iterator}}.

