print.h File Reference
#include <iostream>
#include <mutex>
#include <complex>
#include <vector>
#include <array>
#include <utility>

Namespaces

 ttg
 top-level TTG namespace contains runtime-neutral functionality
 
 ttg::iostream
 
 ttg::detail
 

Enumerations

enum class  ttg::detail::StdOstreamTag { ttg::detail::Cout , ttg::detail::Cerr }
 

Functions

std::ostream & ttg::detail::print_helper (std::ostream &out)
 
template<typename T , typename... Ts>
std::ostream & ttg::detail::print_helper (std::ostream &out, const T &t, const Ts &... ts)
 
template<StdOstreamTag >
std::mutex & ttg::detail::print_mutex_accessor ()
 
template<typename T , typename... Ts>
void ttg::print (const T &t, const Ts &... ts)
 atomically prints to std::cout a sequence of items (separated by ttg::print_separator) followed by std::endl More...
 
template<typename T , typename... Ts>
void ttg::print_error (const T &t, const Ts &... ts)
 atomically prints to std::cerr a sequence of items (separated by ttg::print_separator) followed by std::endl More...
 
template<typename T , typename... Ts>
void ttg::log (const T &t, const Ts &... ts)
 atomically prints to std::clog a sequence of items (separated by ttg::print_separator) followed by std::endl More...
 
I/O operators for standard types
template<typename T >
std::ostream & ttg::iostream::operator<< (std::ostream &s, const std::complex< T > &c)
 default printing of std::complex More...
 
template<typename T , typename U >
std::ostream & ttg::iostream::operator<< (std::ostream &s, const std::pair< T, U > &p)
 default printing of std::pair More...
 
template<typename T >
std::ostream & ttg::iostream::operator<< (std::ostream &s, const std::vector< T > &c)
 default printing of std::vector More...
 
template<typename T , std::size_t N>
std::enable_if<!std::is_same< T, char >::value, std::ostream & >::type ttg::iostream::operator<< (std::ostream &s, const std::array< T, N > &v)
 default printing of std::array More...
 
template<typename T , std::size_t N>
std::enable_if<!std::is_same< T, char >::value, std::ostream & >::type ttg::iostream::operator<< (std::ostream &s, const T(&v)[N])
 default printing of fixed dimension arrays. More...
 

Variables

constexpr char ttg::print_separator = ' '
 
constexpr char ttg::print_seq_separator = ','
 
constexpr char ttg::print_seq_begin = '{'
 
constexpr char ttg::print_seq_end = '}'