Home work №3 "C++ Developer. Professional" OTUS  0.0.1
Public Member Functions | Private Attributes | Static Private Attributes | Friends | List of all members
tmp_::Integral_type_printer< T, class > Class Template Reference

#include <print_ip.h>

Collaboration diagram for tmp_::Integral_type_printer< T, class >:

Public Member Functions

 Integral_type_printer (const T &in_param)
 

Private Attributes

union {
   uint8_t   byte_represent [sizeof(T)]
 
   T   value
 
}; 
 

Static Private Attributes

static constexpr size_t type_size = sizeof(T) - 1
 

Friends

std::ostream & operator<< (std::ostream &cur_stream, const Integral_type_printer &in_param)
 

Constructor & Destructor Documentation

◆ Integral_type_printer()

template<typename T , class = enable_integral_t<T>>
tmp_::Integral_type_printer< T, class >::Integral_type_printer ( const T &  in_param)
inline

Friends And Related Function Documentation

◆ operator<<

template<typename T , class = enable_integral_t<T>>
std::ostream& operator<< ( std::ostream &  cur_stream,
const Integral_type_printer< T, class > &  in_param 
)
friend

Member Data Documentation

◆ @1

union { ... }

◆ byte_represent

template<typename T , class = enable_integral_t<T>>
uint8_t tmp_::Integral_type_printer< T, class >::byte_represent[sizeof(T)]

◆ type_size

template<typename T , class = enable_integral_t<T>>
constexpr size_t tmp_::Integral_type_printer< T, class >::type_size = sizeof(T) - 1
staticconstexprprivate

◆ value

template<typename T , class = enable_integral_t<T>>
T tmp_::Integral_type_printer< T, class >::value

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