\hypertarget{classtesting_1_1internal_1_1_cartesian_product_generator4}{}\section{testing\+:\+:internal\+:\+:Cartesian\+Product\+Generator4$<$ T1, T2, T3, T4 $>$ Class Template Reference}
\label{classtesting_1_1internal_1_1_cartesian_product_generator4}\index{testing\+::internal\+::\+Cartesian\+Product\+Generator4$<$ T1, T2, T3, T4 $>$@{testing\+::internal\+::\+Cartesian\+Product\+Generator4$<$ T1, T2, T3, T4 $>$}}


{\ttfamily \#include $<$gtest.\+h$>$}

Inheritance diagram for testing\+:\+:internal\+:\+:Cartesian\+Product\+Generator4$<$ T1, T2, T3, T4 $>$\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{classtesting_1_1internal_1_1_cartesian_product_generator4}
\end{center}
\end{figure}
\subsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
typedef \+::std\+::tuple$<$ T1, T2, T3, T4 $>$ \mbox{\hyperlink{classtesting_1_1internal_1_1_cartesian_product_generator4_ab5e2480f7abacb80850de470c3225412}{Param\+Type}}
\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{classtesting_1_1internal_1_1_cartesian_product_generator4_a4e4512b35f0d71f7a718ded6fe829296}{Cartesian\+Product\+Generator4}} (const \mbox{\hyperlink{classtesting_1_1internal_1_1_param_generator}{Param\+Generator}}$<$ T1 $>$ \&g1, const \mbox{\hyperlink{classtesting_1_1internal_1_1_param_generator}{Param\+Generator}}$<$ T2 $>$ \&g2, const \mbox{\hyperlink{classtesting_1_1internal_1_1_param_generator}{Param\+Generator}}$<$ T3 $>$ \&g3, const \mbox{\hyperlink{classtesting_1_1internal_1_1_param_generator}{Param\+Generator}}$<$ T4 $>$ \&g4)
\item 
\mbox{\hyperlink{classtesting_1_1internal_1_1_cartesian_product_generator4_a75d7d9ee7bae873295df5d4dbec6a165}{$\sim$\+Cartesian\+Product\+Generator4}} () override
\item 
\mbox{\hyperlink{classtesting_1_1internal_1_1_param_iterator_interface}{Param\+Iterator\+Interface}}$<$ \mbox{\hyperlink{classtesting_1_1internal_1_1_cartesian_product_generator4_ab5e2480f7abacb80850de470c3225412}{Param\+Type}} $>$ $\ast$ \mbox{\hyperlink{classtesting_1_1internal_1_1_cartesian_product_generator4_ae04bf9d551c6dc3996d18e90e88f4bfd}{Begin}} () const override
\item 
\mbox{\hyperlink{classtesting_1_1internal_1_1_param_iterator_interface}{Param\+Iterator\+Interface}}$<$ \mbox{\hyperlink{classtesting_1_1internal_1_1_cartesian_product_generator4_ab5e2480f7abacb80850de470c3225412}{Param\+Type}} $>$ $\ast$ \mbox{\hyperlink{classtesting_1_1internal_1_1_cartesian_product_generator4_ae25a27430e476014a2f07c0be4f030f7}{End}} () const override
\end{DoxyCompactItemize}


\subsection{Detailed Description}
\subsubsection*{template$<$typename T1, typename T2, typename T3, typename T4$>$\newline
class testing\+::internal\+::\+Cartesian\+Product\+Generator4$<$ T1, T2, T3, T4 $>$}



Definition at line 11612 of file gtest.\+h.



\subsection{Member Typedef Documentation}
\mbox{\Hypertarget{classtesting_1_1internal_1_1_cartesian_product_generator4_ab5e2480f7abacb80850de470c3225412}\label{classtesting_1_1internal_1_1_cartesian_product_generator4_ab5e2480f7abacb80850de470c3225412}} 
\index{testing\+::internal\+::\+Cartesian\+Product\+Generator4@{testing\+::internal\+::\+Cartesian\+Product\+Generator4}!Param\+Type@{Param\+Type}}
\index{Param\+Type@{Param\+Type}!testing\+::internal\+::\+Cartesian\+Product\+Generator4@{testing\+::internal\+::\+Cartesian\+Product\+Generator4}}
\subsubsection{\texorpdfstring{Param\+Type}{ParamType}}
{\footnotesize\ttfamily template$<$typename T1 , typename T2 , typename T3 , typename T4 $>$ \\
typedef \+::std\+::tuple$<$T1, T2, T3, T4$>$ \mbox{\hyperlink{classtesting_1_1internal_1_1_cartesian_product_generator4}{testing\+::internal\+::\+Cartesian\+Product\+Generator4}}$<$ T1, T2, T3, T4 $>$\+::\mbox{\hyperlink{classtesting_1_1internal_1_1_cartesian_product_generator4_ab5e2480f7abacb80850de470c3225412}{Param\+Type}}}



Definition at line 11615 of file gtest.\+h.



\subsection{Constructor \& Destructor Documentation}
\mbox{\Hypertarget{classtesting_1_1internal_1_1_cartesian_product_generator4_a4e4512b35f0d71f7a718ded6fe829296}\label{classtesting_1_1internal_1_1_cartesian_product_generator4_a4e4512b35f0d71f7a718ded6fe829296}} 
\index{testing\+::internal\+::\+Cartesian\+Product\+Generator4@{testing\+::internal\+::\+Cartesian\+Product\+Generator4}!Cartesian\+Product\+Generator4@{Cartesian\+Product\+Generator4}}
\index{Cartesian\+Product\+Generator4@{Cartesian\+Product\+Generator4}!testing\+::internal\+::\+Cartesian\+Product\+Generator4@{testing\+::internal\+::\+Cartesian\+Product\+Generator4}}
\subsubsection{\texorpdfstring{Cartesian\+Product\+Generator4()}{CartesianProductGenerator4()}}
{\footnotesize\ttfamily template$<$typename T1 , typename T2 , typename T3 , typename T4 $>$ \\
\mbox{\hyperlink{classtesting_1_1internal_1_1_cartesian_product_generator4}{testing\+::internal\+::\+Cartesian\+Product\+Generator4}}$<$ T1, T2, T3, T4 $>$\+::\mbox{\hyperlink{classtesting_1_1internal_1_1_cartesian_product_generator4}{Cartesian\+Product\+Generator4}} (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classtesting_1_1internal_1_1_param_generator}{Param\+Generator}}$<$ T1 $>$ \&}]{g1,  }\item[{const \mbox{\hyperlink{classtesting_1_1internal_1_1_param_generator}{Param\+Generator}}$<$ T2 $>$ \&}]{g2,  }\item[{const \mbox{\hyperlink{classtesting_1_1internal_1_1_param_generator}{Param\+Generator}}$<$ T3 $>$ \&}]{g3,  }\item[{const \mbox{\hyperlink{classtesting_1_1internal_1_1_param_generator}{Param\+Generator}}$<$ T4 $>$ \&}]{g4 }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}



Definition at line 11617 of file gtest.\+h.

\mbox{\Hypertarget{classtesting_1_1internal_1_1_cartesian_product_generator4_a75d7d9ee7bae873295df5d4dbec6a165}\label{classtesting_1_1internal_1_1_cartesian_product_generator4_a75d7d9ee7bae873295df5d4dbec6a165}} 
\index{testing\+::internal\+::\+Cartesian\+Product\+Generator4@{testing\+::internal\+::\+Cartesian\+Product\+Generator4}!````~Cartesian\+Product\+Generator4@{$\sim$\+Cartesian\+Product\+Generator4}}
\index{````~Cartesian\+Product\+Generator4@{$\sim$\+Cartesian\+Product\+Generator4}!testing\+::internal\+::\+Cartesian\+Product\+Generator4@{testing\+::internal\+::\+Cartesian\+Product\+Generator4}}
\subsubsection{\texorpdfstring{$\sim$\+Cartesian\+Product\+Generator4()}{~CartesianProductGenerator4()}}
{\footnotesize\ttfamily template$<$typename T1 , typename T2 , typename T3 , typename T4 $>$ \\
\mbox{\hyperlink{classtesting_1_1internal_1_1_cartesian_product_generator4}{testing\+::internal\+::\+Cartesian\+Product\+Generator4}}$<$ T1, T2, T3, T4 $>$\+::$\sim$\mbox{\hyperlink{classtesting_1_1internal_1_1_cartesian_product_generator4}{Cartesian\+Product\+Generator4}} (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [override]}}



Definition at line 11621 of file gtest.\+h.



\subsection{Member Function Documentation}
\mbox{\Hypertarget{classtesting_1_1internal_1_1_cartesian_product_generator4_ae04bf9d551c6dc3996d18e90e88f4bfd}\label{classtesting_1_1internal_1_1_cartesian_product_generator4_ae04bf9d551c6dc3996d18e90e88f4bfd}} 
\index{testing\+::internal\+::\+Cartesian\+Product\+Generator4@{testing\+::internal\+::\+Cartesian\+Product\+Generator4}!Begin@{Begin}}
\index{Begin@{Begin}!testing\+::internal\+::\+Cartesian\+Product\+Generator4@{testing\+::internal\+::\+Cartesian\+Product\+Generator4}}
\subsubsection{\texorpdfstring{Begin()}{Begin()}}
{\footnotesize\ttfamily template$<$typename T1 , typename T2 , typename T3 , typename T4 $>$ \\
\mbox{\hyperlink{classtesting_1_1internal_1_1_param_iterator_interface}{Param\+Iterator\+Interface}}$<$\mbox{\hyperlink{classtesting_1_1internal_1_1_cartesian_product_generator4_ab5e2480f7abacb80850de470c3225412}{Param\+Type}}$>$$\ast$ \mbox{\hyperlink{classtesting_1_1internal_1_1_cartesian_product_generator4}{testing\+::internal\+::\+Cartesian\+Product\+Generator4}}$<$ T1, T2, T3, T4 $>$\+::Begin (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [override]}, {\ttfamily [virtual]}}



Implements \mbox{\hyperlink{classtesting_1_1internal_1_1_param_generator_interface_ae1de83b16fe9a53c67778a026c6a9569}{testing\+::internal\+::\+Param\+Generator\+Interface$<$ \+::std\+::tuple$<$ T1, T2, T3, T4 $>$ $>$}}.



Definition at line 11623 of file gtest.\+h.

\mbox{\Hypertarget{classtesting_1_1internal_1_1_cartesian_product_generator4_ae25a27430e476014a2f07c0be4f030f7}\label{classtesting_1_1internal_1_1_cartesian_product_generator4_ae25a27430e476014a2f07c0be4f030f7}} 
\index{testing\+::internal\+::\+Cartesian\+Product\+Generator4@{testing\+::internal\+::\+Cartesian\+Product\+Generator4}!End@{End}}
\index{End@{End}!testing\+::internal\+::\+Cartesian\+Product\+Generator4@{testing\+::internal\+::\+Cartesian\+Product\+Generator4}}
\subsubsection{\texorpdfstring{End()}{End()}}
{\footnotesize\ttfamily template$<$typename T1 , typename T2 , typename T3 , typename T4 $>$ \\
\mbox{\hyperlink{classtesting_1_1internal_1_1_param_iterator_interface}{Param\+Iterator\+Interface}}$<$\mbox{\hyperlink{classtesting_1_1internal_1_1_cartesian_product_generator4_ab5e2480f7abacb80850de470c3225412}{Param\+Type}}$>$$\ast$ \mbox{\hyperlink{classtesting_1_1internal_1_1_cartesian_product_generator4}{testing\+::internal\+::\+Cartesian\+Product\+Generator4}}$<$ T1, T2, T3, T4 $>$\+::End (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [override]}, {\ttfamily [virtual]}}



Implements \mbox{\hyperlink{classtesting_1_1internal_1_1_param_generator_interface_afa7211b74990e11d3fc7ad4e7113da4f}{testing\+::internal\+::\+Param\+Generator\+Interface$<$ \+::std\+::tuple$<$ T1, T2, T3, T4 $>$ $>$}}.



Definition at line 11627 of file gtest.\+h.



The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
test/eclipse-\/cygwin/lib/gtest/\mbox{\hyperlink{gtest_8h}{gtest.\+h}}\end{DoxyCompactItemize}
