\hypertarget{struct_k_b_l_i_b___n_s_1_1detail__bits_1_1bitfield__proxy}{}\doxysection{KBLIB\+\_\+\+NS\+::detail\+\_\+bits\+::bitfield\+\_\+proxy\texorpdfstring{$<$}{<} Parent, ReturnT, Set, Get \texorpdfstring{$>$}{>} Struct Template Reference}
\label{struct_k_b_l_i_b___n_s_1_1detail__bits_1_1bitfield__proxy}\index{KBLIB\_NS::detail\_bits::bitfield\_proxy$<$ Parent, ReturnT, Set, Get $>$@{KBLIB\_NS::detail\_bits::bitfield\_proxy$<$ Parent, ReturnT, Set, Get $>$}}


A proxy reference type for BITFIELD-\/declared bitfields.  




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

\doxysubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
constexpr auto \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1detail__bits_1_1bitfield__proxy_acfd33d21900d492b76a22324309d30d5}{operator=}} (ReturnT val) noexcept -\/$>$ ReturnT
\item 
constexpr \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1detail__bits_1_1bitfield__proxy_a8c0a0720ec90eefe316d87e4e57b2079}{operator ReturnT}} () const noexcept
\end{DoxyCompactItemize}
\doxysubsection*{Public Attributes}
\begin{DoxyCompactItemize}
\item 
Parent $\ast$ \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1detail__bits_1_1bitfield__proxy_ab96f2dfce614e2276864d99757eebc38}{p}}
\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
\subsubsection*{template$<$typename Parent, typename ReturnT, ReturnT(Parent\+::$\ast$)(ReturnT) noexcept Set, ReturnT(Parent\+::$\ast$)() const noexcept Get$>$\newline
struct KBLIB\+\_\+\+NS\+::detail\+\_\+bits\+::bitfield\+\_\+proxy$<$ Parent, Return\+T, Set, Get $>$}
A proxy reference type for BITFIELD-\/declared bitfields. 

It may be assigned to, or it may be used as a prvalue of type ReturnT. Unlike most proxy references, this is actually not that dissimilar to a language bitfield, which has only those capabilities. Like all other proxy references, it should not generally be bound to an auto variable. 

Definition at line \mbox{\hyperlink{bits_8h_source_l00475}{475}} of file \mbox{\hyperlink{bits_8h_source}{bits.\+h}}.



\doxysubsection{Member Function Documentation}
\mbox{\Hypertarget{struct_k_b_l_i_b___n_s_1_1detail__bits_1_1bitfield__proxy_a8c0a0720ec90eefe316d87e4e57b2079}\label{struct_k_b_l_i_b___n_s_1_1detail__bits_1_1bitfield__proxy_a8c0a0720ec90eefe316d87e4e57b2079}} 
\index{KBLIB\_NS::detail\_bits::bitfield\_proxy$<$ Parent, ReturnT, Set, Get $>$@{KBLIB\_NS::detail\_bits::bitfield\_proxy$<$ Parent, ReturnT, Set, Get $>$}!operator ReturnT@{operator ReturnT}}
\index{operator ReturnT@{operator ReturnT}!KBLIB\_NS::detail\_bits::bitfield\_proxy$<$ Parent, ReturnT, Set, Get $>$@{KBLIB\_NS::detail\_bits::bitfield\_proxy$<$ Parent, ReturnT, Set, Get $>$}}
\doxysubsubsection{\texorpdfstring{operator ReturnT()}{operator ReturnT()}}
{\footnotesize\ttfamily template$<$typename Parent , typename ReturnT , ReturnT(Parent\+::$\ast$)(ReturnT) noexcept Set, ReturnT(Parent\+::$\ast$)() const noexcept Get$>$ \\
constexpr \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1detail__bits_1_1bitfield__proxy}{KBLIB\+\_\+\+NS\+::detail\+\_\+bits\+::bitfield\+\_\+proxy}}$<$ Parent, ReturnT, Set, Get $>$\+::operator ReturnT (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [constexpr]}, {\ttfamily [noexcept]}}



Definition at line \mbox{\hyperlink{bits_8h_source_l00480}{480}} of file \mbox{\hyperlink{bits_8h_source}{bits.\+h}}.

\mbox{\Hypertarget{struct_k_b_l_i_b___n_s_1_1detail__bits_1_1bitfield__proxy_acfd33d21900d492b76a22324309d30d5}\label{struct_k_b_l_i_b___n_s_1_1detail__bits_1_1bitfield__proxy_acfd33d21900d492b76a22324309d30d5}} 
\index{KBLIB\_NS::detail\_bits::bitfield\_proxy$<$ Parent, ReturnT, Set, Get $>$@{KBLIB\_NS::detail\_bits::bitfield\_proxy$<$ Parent, ReturnT, Set, Get $>$}!operator=@{operator=}}
\index{operator=@{operator=}!KBLIB\_NS::detail\_bits::bitfield\_proxy$<$ Parent, ReturnT, Set, Get $>$@{KBLIB\_NS::detail\_bits::bitfield\_proxy$<$ Parent, ReturnT, Set, Get $>$}}
\doxysubsubsection{\texorpdfstring{operator=()}{operator=()}}
{\footnotesize\ttfamily template$<$typename Parent , typename ReturnT , ReturnT(Parent\+::$\ast$)(ReturnT) noexcept Set, ReturnT(Parent\+::$\ast$)() const noexcept Get$>$ \\
constexpr auto \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1detail__bits_1_1bitfield__proxy}{KBLIB\+\_\+\+NS\+::detail\+\_\+bits\+::bitfield\+\_\+proxy}}$<$ Parent, ReturnT, Set, Get $>$\+::operator= (\begin{DoxyParamCaption}\item[{ReturnT}]{val }\end{DoxyParamCaption}) -\/$>$ ReturnT \hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [constexpr]}, {\ttfamily [noexcept]}}



Definition at line \mbox{\hyperlink{bits_8h_source_l00477}{477}} of file \mbox{\hyperlink{bits_8h_source}{bits.\+h}}.



\doxysubsection{Member Data Documentation}
\mbox{\Hypertarget{struct_k_b_l_i_b___n_s_1_1detail__bits_1_1bitfield__proxy_ab96f2dfce614e2276864d99757eebc38}\label{struct_k_b_l_i_b___n_s_1_1detail__bits_1_1bitfield__proxy_ab96f2dfce614e2276864d99757eebc38}} 
\index{KBLIB\_NS::detail\_bits::bitfield\_proxy$<$ Parent, ReturnT, Set, Get $>$@{KBLIB\_NS::detail\_bits::bitfield\_proxy$<$ Parent, ReturnT, Set, Get $>$}!p@{p}}
\index{p@{p}!KBLIB\_NS::detail\_bits::bitfield\_proxy$<$ Parent, ReturnT, Set, Get $>$@{KBLIB\_NS::detail\_bits::bitfield\_proxy$<$ Parent, ReturnT, Set, Get $>$}}
\doxysubsubsection{\texorpdfstring{p}{p}}
{\footnotesize\ttfamily template$<$typename Parent , typename ReturnT , ReturnT(Parent\+::$\ast$)(ReturnT) noexcept Set, ReturnT(Parent\+::$\ast$)() const noexcept Get$>$ \\
Parent$\ast$ \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1detail__bits_1_1bitfield__proxy}{KBLIB\+\_\+\+NS\+::detail\+\_\+bits\+::bitfield\+\_\+proxy}}$<$ Parent, ReturnT, Set, Get $>$\+::p}



Definition at line \mbox{\hyperlink{bits_8h_source_l00476}{476}} of file \mbox{\hyperlink{bits_8h_source}{bits.\+h}}.



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