|
Home work №3 "C++ Developer. Professional" OTUS
0.0.1
|
Classes | |
| class | Integral_type_printer |
Typedefs | |
| template<typename T > | |
| using | enable_integral_t = std::enable_if_t< std::is_integral_v< T > &&!std::is_same_v< T, bool > > |
| template<typename T , template< typename > class Cont> | |
| using | enable_containers_t = std::enable_if_t< std::is_same_v< std::decay_t< Cont< T > >, std::vector< T > >||std::is_same_v< std::decay_t< Cont< T > >, std::list< T > >> |
| template<typename T > | |
| using | enable_string_t = std::enable_if_t< std::is_same_v< std::decay_t< T >, std::string > > |
| template<typename T , typename... Tail> | |
| using | enable_all_the_same_t = std::enable_if_t< std::conjunction_v< std::is_same< T, Tail >... > > |
Functions | |
| template<typename T , typename ... Ts> | |
| void | print_args (std::ostream &cur_stream, const T &first_arg, const Ts &...tail_args) |
| template<typename ... Ts> | |
| std::ostream & | operator<< (std::ostream &cur_stream, const std::tuple< Ts... > &in_parameter) |
| using tmp_::enable_all_the_same_t = typedef std::enable_if_t<std::conjunction_v<std::is_same<T, Tail>...> > |
| using tmp_::enable_containers_t = typedef std::enable_if_t<std::is_same_v<std::decay_t<Cont<T> >, std::vector<T> > || std::is_same_v<std::decay_t<Cont<T> >, std::list<T> >> |
| using tmp_::enable_integral_t = typedef std::enable_if_t<std::is_integral_v<T> && !std::is_same_v<T, bool> > |
| using tmp_::enable_string_t = typedef std::enable_if_t<std::is_same_v<std::decay_t<T>, std::string> > |
| std::ostream& tmp_::operator<< | ( | std::ostream & | cur_stream, |
| const std::tuple< Ts... > & | in_parameter | ||
| ) |
| void tmp_::print_args | ( | std::ostream & | cur_stream, |
| const T & | first_arg, | ||
| const Ts &... | tail_args | ||
| ) |
1.8.17