\hypertarget{structkblib_1_1trivial__array}{}\doxysection{kblib\+::trivial\+\_\+array\texorpdfstring{$<$}{<} T, N \texorpdfstring{$>$}{>} Struct Template Reference}
\label{structkblib_1_1trivial__array}\index{kblib::trivial\_array$<$ T, N $>$@{kblib::trivial\_array$<$ T, N $>$}}


std\+::array isn\textquotesingle{}t constexpr enough in C++14, so a dedicated array class is needed for constexpr functions.  




{\ttfamily \#include $<$kblib/stats.\+h$>$}

\doxysubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
constexpr auto \mbox{\hyperlink{structkblib_1_1trivial__array_adf3010e52fd18c4e40ba48707d3635ce}{operator\mbox{[}$\,$\mbox{]}}} (std\+::size\+\_\+t n) -\/$>$ T \&
\item 
constexpr auto \mbox{\hyperlink{structkblib_1_1trivial__array_ae091de8b7b86f6057bc33dc066bb5538}{operator\mbox{[}$\,$\mbox{]}}} (std\+::size\+\_\+t n) const -\/$>$ const T \&
\item 
constexpr auto \mbox{\hyperlink{structkblib_1_1trivial__array_a5086d4ef7959c5c543964801b7ed8535}{size}} () const -\/$>$ std\+::size\+\_\+t
\item 
constexpr auto \mbox{\hyperlink{structkblib_1_1trivial__array_a86ce58f6a54d3b7b4e5da2f6c662b6c1}{begin}} () \&noexcept -\/$>$ T $\ast$
\item 
constexpr auto \mbox{\hyperlink{structkblib_1_1trivial__array_a5a5f343c5d83f4fa5efa723d7ea3438d}{begin}} () const \&noexcept -\/$>$ const T $\ast$
\item 
constexpr auto \mbox{\hyperlink{structkblib_1_1trivial__array_ae99bf75074f9bcc2922138a9784ab5de}{end}} () \&noexcept -\/$>$ T $\ast$
\item 
constexpr auto \mbox{\hyperlink{structkblib_1_1trivial__array_abc5905757a91d69a439ed63c5b85af06}{end}} () const \&noexcept -\/$>$ const T $\ast$
\end{DoxyCompactItemize}
\doxysubsection*{Public Attributes}
\begin{DoxyCompactItemize}
\item 
T \mbox{\hyperlink{structkblib_1_1trivial__array_a1f46739e45cc34e476f19d35aea7127b}{arr}} \mbox{[}N\mbox{]}
\end{DoxyCompactItemize}
\doxysubsection*{Friends}
\begin{DoxyCompactItemize}
\item 
constexpr friend auto \mbox{\hyperlink{structkblib_1_1trivial__array_ae8d35fd6a7c4f7955b06d9dfa8490c5a}{operator==}} (const \mbox{\hyperlink{structkblib_1_1trivial__array}{trivial\+\_\+array}} \&\mbox{\hyperlink{namespacekblib_a22831dce77d5f35c13930b5e30a59f07}{a}}, const \mbox{\hyperlink{structkblib_1_1trivial__array}{trivial\+\_\+array}} \&b) noexcept -\/$>$ bool
\item 
constexpr friend auto \mbox{\hyperlink{structkblib_1_1trivial__array_afdd3d0ad0fba5ed12b58dfa68aebb5af}{operator!=}} (const \mbox{\hyperlink{structkblib_1_1trivial__array}{trivial\+\_\+array}} \&\mbox{\hyperlink{namespacekblib_a22831dce77d5f35c13930b5e30a59f07}{a}}, const \mbox{\hyperlink{structkblib_1_1trivial__array}{trivial\+\_\+array}} \&b) noexcept -\/$>$ bool
\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
\subsubsection*{template$<$typename T, std\+::size\+\_\+t N$>$\newline
struct kblib\+::trivial\+\_\+array$<$ T, N $>$}
std\+::array isn\textquotesingle{}t constexpr enough in C++14, so a dedicated array class is needed for constexpr functions. 

Definition at line \mbox{\hyperlink{stats_8h_source_l00084}{84}} of file \mbox{\hyperlink{stats_8h_source}{stats.\+h}}.



\doxysubsection{Member Function Documentation}
\mbox{\Hypertarget{structkblib_1_1trivial__array_a86ce58f6a54d3b7b4e5da2f6c662b6c1}\label{structkblib_1_1trivial__array_a86ce58f6a54d3b7b4e5da2f6c662b6c1}} 
\index{kblib::trivial\_array$<$ T, N $>$@{kblib::trivial\_array$<$ T, N $>$}!begin@{begin}}
\index{begin@{begin}!kblib::trivial\_array$<$ T, N $>$@{kblib::trivial\_array$<$ T, N $>$}}
\doxysubsubsection{\texorpdfstring{begin()}{begin()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily template$<$typename T , std\+::size\+\_\+t N$>$ \\
constexpr auto \mbox{\hyperlink{structkblib_1_1trivial__array}{kblib\+::trivial\+\_\+array}}$<$ T, N $>$\+::begin (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) \& -\/$>$ T$\ast$ \hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [constexpr]}, {\ttfamily [noexcept]}}



Definition at line \mbox{\hyperlink{stats_8h_source_l00093}{93}} of file \mbox{\hyperlink{stats_8h_source}{stats.\+h}}.

\mbox{\Hypertarget{structkblib_1_1trivial__array_a5a5f343c5d83f4fa5efa723d7ea3438d}\label{structkblib_1_1trivial__array_a5a5f343c5d83f4fa5efa723d7ea3438d}} 
\index{kblib::trivial\_array$<$ T, N $>$@{kblib::trivial\_array$<$ T, N $>$}!begin@{begin}}
\index{begin@{begin}!kblib::trivial\_array$<$ T, N $>$@{kblib::trivial\_array$<$ T, N $>$}}
\doxysubsubsection{\texorpdfstring{begin()}{begin()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily template$<$typename T , std\+::size\+\_\+t N$>$ \\
constexpr auto \mbox{\hyperlink{structkblib_1_1trivial__array}{kblib\+::trivial\+\_\+array}}$<$ T, N $>$\+::begin (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const \& -\/$>$ const T$\ast$ \hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [constexpr]}, {\ttfamily [noexcept]}}



Definition at line \mbox{\hyperlink{stats_8h_source_l00094}{94}} of file \mbox{\hyperlink{stats_8h_source}{stats.\+h}}.

\mbox{\Hypertarget{structkblib_1_1trivial__array_ae99bf75074f9bcc2922138a9784ab5de}\label{structkblib_1_1trivial__array_ae99bf75074f9bcc2922138a9784ab5de}} 
\index{kblib::trivial\_array$<$ T, N $>$@{kblib::trivial\_array$<$ T, N $>$}!end@{end}}
\index{end@{end}!kblib::trivial\_array$<$ T, N $>$@{kblib::trivial\_array$<$ T, N $>$}}
\doxysubsubsection{\texorpdfstring{end()}{end()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily template$<$typename T , std\+::size\+\_\+t N$>$ \\
constexpr auto \mbox{\hyperlink{structkblib_1_1trivial__array}{kblib\+::trivial\+\_\+array}}$<$ T, N $>$\+::end (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) \& -\/$>$ T$\ast$ \hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [constexpr]}, {\ttfamily [noexcept]}}



Definition at line \mbox{\hyperlink{stats_8h_source_l00097}{97}} of file \mbox{\hyperlink{stats_8h_source}{stats.\+h}}.

\mbox{\Hypertarget{structkblib_1_1trivial__array_abc5905757a91d69a439ed63c5b85af06}\label{structkblib_1_1trivial__array_abc5905757a91d69a439ed63c5b85af06}} 
\index{kblib::trivial\_array$<$ T, N $>$@{kblib::trivial\_array$<$ T, N $>$}!end@{end}}
\index{end@{end}!kblib::trivial\_array$<$ T, N $>$@{kblib::trivial\_array$<$ T, N $>$}}
\doxysubsubsection{\texorpdfstring{end()}{end()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily template$<$typename T , std\+::size\+\_\+t N$>$ \\
constexpr auto \mbox{\hyperlink{structkblib_1_1trivial__array}{kblib\+::trivial\+\_\+array}}$<$ T, N $>$\+::end (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const \& -\/$>$ const T$\ast$ \hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [constexpr]}, {\ttfamily [noexcept]}}



Definition at line \mbox{\hyperlink{stats_8h_source_l00098}{98}} of file \mbox{\hyperlink{stats_8h_source}{stats.\+h}}.

\mbox{\Hypertarget{structkblib_1_1trivial__array_adf3010e52fd18c4e40ba48707d3635ce}\label{structkblib_1_1trivial__array_adf3010e52fd18c4e40ba48707d3635ce}} 
\index{kblib::trivial\_array$<$ T, N $>$@{kblib::trivial\_array$<$ T, N $>$}!operator\mbox{[}\mbox{]}@{operator[]}}
\index{operator\mbox{[}\mbox{]}@{operator[]}!kblib::trivial\_array$<$ T, N $>$@{kblib::trivial\_array$<$ T, N $>$}}
\doxysubsubsection{\texorpdfstring{operator[]()}{operator[]()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily template$<$typename T , std\+::size\+\_\+t N$>$ \\
constexpr auto \mbox{\hyperlink{structkblib_1_1trivial__array}{kblib\+::trivial\+\_\+array}}$<$ T, N $>$\+::operator\mbox{[}$\,$\mbox{]} (\begin{DoxyParamCaption}\item[{std\+::size\+\_\+t}]{n }\end{DoxyParamCaption}) -\/$>$ T\& \hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [constexpr]}}



Definition at line \mbox{\hyperlink{stats_8h_source_l00086}{86}} of file \mbox{\hyperlink{stats_8h_source}{stats.\+h}}.

\mbox{\Hypertarget{structkblib_1_1trivial__array_ae091de8b7b86f6057bc33dc066bb5538}\label{structkblib_1_1trivial__array_ae091de8b7b86f6057bc33dc066bb5538}} 
\index{kblib::trivial\_array$<$ T, N $>$@{kblib::trivial\_array$<$ T, N $>$}!operator\mbox{[}\mbox{]}@{operator[]}}
\index{operator\mbox{[}\mbox{]}@{operator[]}!kblib::trivial\_array$<$ T, N $>$@{kblib::trivial\_array$<$ T, N $>$}}
\doxysubsubsection{\texorpdfstring{operator[]()}{operator[]()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily template$<$typename T , std\+::size\+\_\+t N$>$ \\
constexpr auto \mbox{\hyperlink{structkblib_1_1trivial__array}{kblib\+::trivial\+\_\+array}}$<$ T, N $>$\+::operator\mbox{[}$\,$\mbox{]} (\begin{DoxyParamCaption}\item[{std\+::size\+\_\+t}]{n }\end{DoxyParamCaption}) const -\/$>$ const T\& \hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [constexpr]}}



Definition at line \mbox{\hyperlink{stats_8h_source_l00089}{89}} of file \mbox{\hyperlink{stats_8h_source}{stats.\+h}}.

\mbox{\Hypertarget{structkblib_1_1trivial__array_a5086d4ef7959c5c543964801b7ed8535}\label{structkblib_1_1trivial__array_a5086d4ef7959c5c543964801b7ed8535}} 
\index{kblib::trivial\_array$<$ T, N $>$@{kblib::trivial\_array$<$ T, N $>$}!size@{size}}
\index{size@{size}!kblib::trivial\_array$<$ T, N $>$@{kblib::trivial\_array$<$ T, N $>$}}
\doxysubsubsection{\texorpdfstring{size()}{size()}}
{\footnotesize\ttfamily template$<$typename T , std\+::size\+\_\+t N$>$ \\
constexpr auto \mbox{\hyperlink{structkblib_1_1trivial__array}{kblib\+::trivial\+\_\+array}}$<$ T, N $>$\+::size (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const -\/$>$ std\+::size\+\_\+t \hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [constexpr]}}



Definition at line \mbox{\hyperlink{stats_8h_source_l00092}{92}} of file \mbox{\hyperlink{stats_8h_source}{stats.\+h}}.



\doxysubsection{Friends And Related Function Documentation}
\mbox{\Hypertarget{structkblib_1_1trivial__array_afdd3d0ad0fba5ed12b58dfa68aebb5af}\label{structkblib_1_1trivial__array_afdd3d0ad0fba5ed12b58dfa68aebb5af}} 
\index{kblib::trivial\_array$<$ T, N $>$@{kblib::trivial\_array$<$ T, N $>$}!operator"!=@{operator"!=}}
\index{operator"!=@{operator"!=}!kblib::trivial\_array$<$ T, N $>$@{kblib::trivial\_array$<$ T, N $>$}}
\doxysubsubsection{\texorpdfstring{operator"!=}{operator!=}}
{\footnotesize\ttfamily template$<$typename T , std\+::size\+\_\+t N$>$ \\
constexpr friend auto operator!= (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{structkblib_1_1trivial__array}{trivial\+\_\+array}}$<$ T, N $>$ \&}]{a,  }\item[{const \mbox{\hyperlink{structkblib_1_1trivial__array}{trivial\+\_\+array}}$<$ T, N $>$ \&}]{b }\end{DoxyParamCaption}) -\/$>$ bool \hspace{0.3cm}{\ttfamily [friend]}}



Definition at line \mbox{\hyperlink{stats_8h_source_l00106}{106}} of file \mbox{\hyperlink{stats_8h_source}{stats.\+h}}.

\mbox{\Hypertarget{structkblib_1_1trivial__array_ae8d35fd6a7c4f7955b06d9dfa8490c5a}\label{structkblib_1_1trivial__array_ae8d35fd6a7c4f7955b06d9dfa8490c5a}} 
\index{kblib::trivial\_array$<$ T, N $>$@{kblib::trivial\_array$<$ T, N $>$}!operator==@{operator==}}
\index{operator==@{operator==}!kblib::trivial\_array$<$ T, N $>$@{kblib::trivial\_array$<$ T, N $>$}}
\doxysubsubsection{\texorpdfstring{operator==}{operator==}}
{\footnotesize\ttfamily template$<$typename T , std\+::size\+\_\+t N$>$ \\
constexpr friend auto operator== (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{structkblib_1_1trivial__array}{trivial\+\_\+array}}$<$ T, N $>$ \&}]{a,  }\item[{const \mbox{\hyperlink{structkblib_1_1trivial__array}{trivial\+\_\+array}}$<$ T, N $>$ \&}]{b }\end{DoxyParamCaption}) -\/$>$ bool \hspace{0.3cm}{\ttfamily [friend]}}



Definition at line \mbox{\hyperlink{stats_8h_source_l00102}{102}} of file \mbox{\hyperlink{stats_8h_source}{stats.\+h}}.



\doxysubsection{Member Data Documentation}
\mbox{\Hypertarget{structkblib_1_1trivial__array_a1f46739e45cc34e476f19d35aea7127b}\label{structkblib_1_1trivial__array_a1f46739e45cc34e476f19d35aea7127b}} 
\index{kblib::trivial\_array$<$ T, N $>$@{kblib::trivial\_array$<$ T, N $>$}!arr@{arr}}
\index{arr@{arr}!kblib::trivial\_array$<$ T, N $>$@{kblib::trivial\_array$<$ T, N $>$}}
\doxysubsubsection{\texorpdfstring{arr}{arr}}
{\footnotesize\ttfamily template$<$typename T , std\+::size\+\_\+t N$>$ \\
T \mbox{\hyperlink{structkblib_1_1trivial__array}{kblib\+::trivial\+\_\+array}}$<$ T, N $>$\+::arr\mbox{[}N\mbox{]}}



Definition at line \mbox{\hyperlink{stats_8h_source_l00085}{85}} of file \mbox{\hyperlink{stats_8h_source}{stats.\+h}}.



The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
kblib/\mbox{\hyperlink{stats_8h}{stats.\+h}}\end{DoxyCompactItemize}
