kblib 0.2.3
General utilities library for modern C++
kblib::punner< Types > Struct Template Reference

#include <kblib/bits.h>

Inheritance diagram for kblib::punner< Types >:
Collaboration diagram for kblib::punner< Types >:

Public Types

template<std::size_t I>
using base_t = detail_bits::pun_el< impl_t, r_element_t< I >, storage_size, I >
 
template<std::size_t I>
using element_t = typename base_t< I >::type
 

Public Member Functions

template<std::size_t I>
auto get () &noexcept -> decltype(auto)
 
template<std::size_t I>
auto get () const &noexcept -> decltype(auto)
 
template<std::size_t I>
auto get () &&noexcept -> decltype(auto)
 
template<std::size_t I>
auto get () const &&noexcept -> decltype(auto)
 

Detailed Description

template<typename... Types>
struct kblib::punner< Types >

Definition at line 679 of file bits.h.

Member Typedef Documentation

◆ base_t

template<typename... Types>
template<std::size_t I>
using kblib::punner< Types >::base_t = detail_bits::pun_el<impl_t, r_element_t<I>, storage_size, I>

Definition at line 696 of file bits.h.

◆ element_t

template<typename... Types>
template<std::size_t I>
using kblib::punner< Types >::element_t = typename base_t<I>::type

Definition at line 698 of file bits.h.

Member Function Documentation

◆ get() [1/4]

template<typename... Types>
template<std::size_t I>
auto kblib::punner< Types >::get ( ) && -> decltype(auto)
inlinenoexcept

Definition at line 710 of file bits.h.

◆ get() [2/4]

template<typename... Types>
template<std::size_t I>
auto kblib::punner< Types >::get ( ) & -> decltype(auto)
inlinenoexcept

Definition at line 701 of file bits.h.

◆ get() [3/4]

template<typename... Types>
template<std::size_t I>
auto kblib::punner< Types >::get ( ) const && -> decltype(auto)
inlinenoexcept

Definition at line 714 of file bits.h.

◆ get() [4/4]

template<typename... Types>
template<std::size_t I>
auto kblib::punner< Types >::get ( ) const & -> decltype(auto)
inlinenoexcept

Definition at line 706 of file bits.h.


The documentation for this struct was generated from the following file: