\hypertarget{struct_k_b_l_i_b___n_s_1_1indirect__range}{}\doxysection{KBLIB\+\_\+\+NS\+::indirect\+\_\+range\texorpdfstring{$<$}{<} Iter1, Iter2 \texorpdfstring{$>$}{>} Struct Template Reference} \label{struct_k_b_l_i_b___n_s_1_1indirect__range}\index{KBLIB\_NS::indirect\_range$<$ Iter1, Iter2 $>$@{KBLIB\_NS::indirect\_range$<$ Iter1, Iter2 $>$}} Allow range-\/for iteration of an iterator pair. {\ttfamily \#include $<$kblib/iterators.\+h$>$} \doxysubsection*{Public Types} \begin{DoxyCompactItemize} \item using \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1indirect__range_acb0101bed48609d7be1f59d2b68009e7}{value\+\_\+type}} = decltype($\ast$\mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1indirect__range_a5f519f801062480e0aeebd55c696a240}{begin\+\_\+}}) \end{DoxyCompactItemize} \doxysubsection*{Public Member Functions} \begin{DoxyCompactItemize} \item constexpr auto \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1indirect__range_a73b738b87ba9ea8a95e5622fb931fc67}{begin}} () const noexcept -\/$>$ Iter1 \item constexpr auto \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1indirect__range_ae6d4a8ab9e18c584c999f6bbf1118e1c}{end}} () const noexcept -\/$>$ Iter2 \item constexpr auto \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1indirect__range_af427e7cdec0ba8a245e09b93386105e4}{rbegin}} () const noexcept -\/$>$ auto \item constexpr auto \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1indirect__range_a2b36383536e1bd6e6f2cf5ee526d4fc2}{rend}} () const noexcept -\/$>$ auto \end{DoxyCompactItemize} \doxysubsection*{Public Attributes} \begin{DoxyCompactItemize} \item Iter1 \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1indirect__range_a5f519f801062480e0aeebd55c696a240}{begin\+\_\+}} \item Iter2 \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1indirect__range_a3a592d4c7cb126f3ccb11637add88c56}{end\+\_\+}} \end{DoxyCompactItemize} \doxysubsection*{Friends} \begin{DoxyCompactItemize} \item constexpr friend auto \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1indirect__range_a0b9dfb07c7b3c219e120e02ca542fa08}{begin}} (const \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1indirect__range}{indirect\+\_\+range}} \&r) noexcept -\/$>$ Iter1 \item constexpr friend auto \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1indirect__range_a36b0e0282de329a9e368aaf422a0dd0b}{end}} (const \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1indirect__range}{indirect\+\_\+range}} \&r) noexcept -\/$>$ Iter2 \end{DoxyCompactItemize} \doxysubsection{Detailed Description} \subsubsection*{template$<$typename Iter1, typename Iter2$>$\newline struct KBLIB\+\_\+\+NS\+::indirect\+\_\+range$<$ Iter1, Iter2 $>$} Allow range-\/for iteration of an iterator pair. Definition at line \mbox{\hyperlink{iterators_8h_source_l01030}{1030}} of file \mbox{\hyperlink{iterators_8h_source}{iterators.\+h}}. \doxysubsection{Member Typedef Documentation} \mbox{\Hypertarget{struct_k_b_l_i_b___n_s_1_1indirect__range_acb0101bed48609d7be1f59d2b68009e7}\label{struct_k_b_l_i_b___n_s_1_1indirect__range_acb0101bed48609d7be1f59d2b68009e7}} \index{KBLIB\_NS::indirect\_range$<$ Iter1, Iter2 $>$@{KBLIB\_NS::indirect\_range$<$ Iter1, Iter2 $>$}!value\_type@{value\_type}} \index{value\_type@{value\_type}!KBLIB\_NS::indirect\_range$<$ Iter1, Iter2 $>$@{KBLIB\_NS::indirect\_range$<$ Iter1, Iter2 $>$}} \doxysubsubsection{\texorpdfstring{value\_type}{value\_type}} {\footnotesize\ttfamily template$<$typename Iter1 , typename Iter2 $>$ \\ using \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1indirect__range}{KBLIB\+\_\+\+NS\+::indirect\+\_\+range}}$<$ Iter1, Iter2 $>$\+::value\+\_\+type = decltype($\ast$\mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1indirect__range_a5f519f801062480e0aeebd55c696a240}{begin\+\_\+}})} Definition at line \mbox{\hyperlink{iterators_8h_source_l01034}{1034}} of file \mbox{\hyperlink{iterators_8h_source}{iterators.\+h}}. \doxysubsection{Member Function Documentation} \mbox{\Hypertarget{struct_k_b_l_i_b___n_s_1_1indirect__range_a73b738b87ba9ea8a95e5622fb931fc67}\label{struct_k_b_l_i_b___n_s_1_1indirect__range_a73b738b87ba9ea8a95e5622fb931fc67}} \index{KBLIB\_NS::indirect\_range$<$ Iter1, Iter2 $>$@{KBLIB\_NS::indirect\_range$<$ Iter1, Iter2 $>$}!begin@{begin}} \index{begin@{begin}!KBLIB\_NS::indirect\_range$<$ Iter1, Iter2 $>$@{KBLIB\_NS::indirect\_range$<$ Iter1, Iter2 $>$}} \doxysubsubsection{\texorpdfstring{begin()}{begin()}} {\footnotesize\ttfamily template$<$typename Iter1 , typename Iter2 $>$ \\ constexpr auto \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1indirect__range}{KBLIB\+\_\+\+NS\+::indirect\+\_\+range}}$<$ Iter1, Iter2 $>$\+::begin (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const -\/$>$ Iter1 \hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [constexpr]}, {\ttfamily [noexcept]}} Definition at line \mbox{\hyperlink{iterators_8h_source_l01036}{1036}} of file \mbox{\hyperlink{iterators_8h_source}{iterators.\+h}}. \mbox{\Hypertarget{struct_k_b_l_i_b___n_s_1_1indirect__range_ae6d4a8ab9e18c584c999f6bbf1118e1c}\label{struct_k_b_l_i_b___n_s_1_1indirect__range_ae6d4a8ab9e18c584c999f6bbf1118e1c}} \index{KBLIB\_NS::indirect\_range$<$ Iter1, Iter2 $>$@{KBLIB\_NS::indirect\_range$<$ Iter1, Iter2 $>$}!end@{end}} \index{end@{end}!KBLIB\_NS::indirect\_range$<$ Iter1, Iter2 $>$@{KBLIB\_NS::indirect\_range$<$ Iter1, Iter2 $>$}} \doxysubsubsection{\texorpdfstring{end()}{end()}} {\footnotesize\ttfamily template$<$typename Iter1 , typename Iter2 $>$ \\ constexpr auto \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1indirect__range}{KBLIB\+\_\+\+NS\+::indirect\+\_\+range}}$<$ Iter1, Iter2 $>$\+::end (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const -\/$>$ Iter2 \hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [constexpr]}, {\ttfamily [noexcept]}} Definition at line \mbox{\hyperlink{iterators_8h_source_l01037}{1037}} of file \mbox{\hyperlink{iterators_8h_source}{iterators.\+h}}. \mbox{\Hypertarget{struct_k_b_l_i_b___n_s_1_1indirect__range_af427e7cdec0ba8a245e09b93386105e4}\label{struct_k_b_l_i_b___n_s_1_1indirect__range_af427e7cdec0ba8a245e09b93386105e4}} \index{KBLIB\_NS::indirect\_range$<$ Iter1, Iter2 $>$@{KBLIB\_NS::indirect\_range$<$ Iter1, Iter2 $>$}!rbegin@{rbegin}} \index{rbegin@{rbegin}!KBLIB\_NS::indirect\_range$<$ Iter1, Iter2 $>$@{KBLIB\_NS::indirect\_range$<$ Iter1, Iter2 $>$}} \doxysubsubsection{\texorpdfstring{rbegin()}{rbegin()}} {\footnotesize\ttfamily template$<$typename Iter1 , typename Iter2 $>$ \\ constexpr auto \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1indirect__range}{KBLIB\+\_\+\+NS\+::indirect\+\_\+range}}$<$ Iter1, Iter2 $>$\+::rbegin (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const -\/$>$ auto \hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [constexpr]}, {\ttfamily [noexcept]}} Definition at line \mbox{\hyperlink{iterators_8h_source_l01038}{1038}} of file \mbox{\hyperlink{iterators_8h_source}{iterators.\+h}}. \mbox{\Hypertarget{struct_k_b_l_i_b___n_s_1_1indirect__range_a2b36383536e1bd6e6f2cf5ee526d4fc2}\label{struct_k_b_l_i_b___n_s_1_1indirect__range_a2b36383536e1bd6e6f2cf5ee526d4fc2}} \index{KBLIB\_NS::indirect\_range$<$ Iter1, Iter2 $>$@{KBLIB\_NS::indirect\_range$<$ Iter1, Iter2 $>$}!rend@{rend}} \index{rend@{rend}!KBLIB\_NS::indirect\_range$<$ Iter1, Iter2 $>$@{KBLIB\_NS::indirect\_range$<$ Iter1, Iter2 $>$}} \doxysubsubsection{\texorpdfstring{rend()}{rend()}} {\footnotesize\ttfamily template$<$typename Iter1 , typename Iter2 $>$ \\ constexpr auto \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1indirect__range}{KBLIB\+\_\+\+NS\+::indirect\+\_\+range}}$<$ Iter1, Iter2 $>$\+::rend (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const -\/$>$ auto \hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [constexpr]}, {\ttfamily [noexcept]}} Definition at line \mbox{\hyperlink{iterators_8h_source_l01041}{1041}} of file \mbox{\hyperlink{iterators_8h_source}{iterators.\+h}}. \doxysubsection{Friends And Related Function Documentation} \mbox{\Hypertarget{struct_k_b_l_i_b___n_s_1_1indirect__range_a0b9dfb07c7b3c219e120e02ca542fa08}\label{struct_k_b_l_i_b___n_s_1_1indirect__range_a0b9dfb07c7b3c219e120e02ca542fa08}} \index{KBLIB\_NS::indirect\_range$<$ Iter1, Iter2 $>$@{KBLIB\_NS::indirect\_range$<$ Iter1, Iter2 $>$}!begin@{begin}} \index{begin@{begin}!KBLIB\_NS::indirect\_range$<$ Iter1, Iter2 $>$@{KBLIB\_NS::indirect\_range$<$ Iter1, Iter2 $>$}} \doxysubsubsection{\texorpdfstring{begin}{begin}} {\footnotesize\ttfamily template$<$typename Iter1 , typename Iter2 $>$ \\ constexpr friend auto begin (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1indirect__range}{indirect\+\_\+range}}$<$ Iter1, Iter2 $>$ \&}]{r }\end{DoxyParamCaption}) -\/$>$ Iter1 \hspace{0.3cm}{\ttfamily [friend]}} Definition at line \mbox{\hyperlink{iterators_8h_source_l01045}{1045}} of file \mbox{\hyperlink{iterators_8h_source}{iterators.\+h}}. \mbox{\Hypertarget{struct_k_b_l_i_b___n_s_1_1indirect__range_a36b0e0282de329a9e368aaf422a0dd0b}\label{struct_k_b_l_i_b___n_s_1_1indirect__range_a36b0e0282de329a9e368aaf422a0dd0b}} \index{KBLIB\_NS::indirect\_range$<$ Iter1, Iter2 $>$@{KBLIB\_NS::indirect\_range$<$ Iter1, Iter2 $>$}!end@{end}} \index{end@{end}!KBLIB\_NS::indirect\_range$<$ Iter1, Iter2 $>$@{KBLIB\_NS::indirect\_range$<$ Iter1, Iter2 $>$}} \doxysubsubsection{\texorpdfstring{end}{end}} {\footnotesize\ttfamily template$<$typename Iter1 , typename Iter2 $>$ \\ constexpr friend auto end (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1indirect__range}{indirect\+\_\+range}}$<$ Iter1, Iter2 $>$ \&}]{r }\end{DoxyParamCaption}) -\/$>$ Iter2 \hspace{0.3cm}{\ttfamily [friend]}} Definition at line \mbox{\hyperlink{iterators_8h_source_l01048}{1048}} of file \mbox{\hyperlink{iterators_8h_source}{iterators.\+h}}. \doxysubsection{Member Data Documentation} \mbox{\Hypertarget{struct_k_b_l_i_b___n_s_1_1indirect__range_a5f519f801062480e0aeebd55c696a240}\label{struct_k_b_l_i_b___n_s_1_1indirect__range_a5f519f801062480e0aeebd55c696a240}} \index{KBLIB\_NS::indirect\_range$<$ Iter1, Iter2 $>$@{KBLIB\_NS::indirect\_range$<$ Iter1, Iter2 $>$}!begin\_@{begin\_}} \index{begin\_@{begin\_}!KBLIB\_NS::indirect\_range$<$ Iter1, Iter2 $>$@{KBLIB\_NS::indirect\_range$<$ Iter1, Iter2 $>$}} \doxysubsubsection{\texorpdfstring{begin\_}{begin\_}} {\footnotesize\ttfamily template$<$typename Iter1 , typename Iter2 $>$ \\ Iter1 \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1indirect__range}{KBLIB\+\_\+\+NS\+::indirect\+\_\+range}}$<$ Iter1, Iter2 $>$\+::begin\+\_\+} Definition at line \mbox{\hyperlink{iterators_8h_source_l01031}{1031}} of file \mbox{\hyperlink{iterators_8h_source}{iterators.\+h}}. \mbox{\Hypertarget{struct_k_b_l_i_b___n_s_1_1indirect__range_a3a592d4c7cb126f3ccb11637add88c56}\label{struct_k_b_l_i_b___n_s_1_1indirect__range_a3a592d4c7cb126f3ccb11637add88c56}} \index{KBLIB\_NS::indirect\_range$<$ Iter1, Iter2 $>$@{KBLIB\_NS::indirect\_range$<$ Iter1, Iter2 $>$}!end\_@{end\_}} \index{end\_@{end\_}!KBLIB\_NS::indirect\_range$<$ Iter1, Iter2 $>$@{KBLIB\_NS::indirect\_range$<$ Iter1, Iter2 $>$}} \doxysubsubsection{\texorpdfstring{end\_}{end\_}} {\footnotesize\ttfamily template$<$typename Iter1 , typename Iter2 $>$ \\ Iter2 \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1indirect__range}{KBLIB\+\_\+\+NS\+::indirect\+\_\+range}}$<$ Iter1, Iter2 $>$\+::end\+\_\+} Definition at line \mbox{\hyperlink{iterators_8h_source_l01032}{1032}} of file \mbox{\hyperlink{iterators_8h_source}{iterators.\+h}}. The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize} \item kblib/\mbox{\hyperlink{iterators_8h}{iterators.\+h}}\end{DoxyCompactItemize}