INET Framework for OMNeT++/OMNEST
IPrintableObject.h File Reference

Classes

class  inet::IPrintableObject
 This purely virtual interface provides an abstraction for printable objects. More...
 
struct  inet::has_print_to_string< typename, typename >
 
struct  inet::has_print_to_string< T, inet::void_t< decltype(std::declval< T >().printToString())> >
 
struct  inet::has_str< typename, typename >
 
struct  inet::has_str< T, inet::void_t< decltype(std::declval< T >().str())> >
 

Namespaces

 inet
 Copyright (c) 2005 Jan Ringo�, www.ringos.cz.
 

Functions

std::ostream & inet::operator<< (std::ostream &stream, const IPrintableObject *object)
 
std::ostream & inet::operator<< (std::ostream &stream, const IPrintableObject &object)
 
std::string inet::printFieldToString (const IPrintableObject *object, int level, int evFlags=0)
 
template<typename T >
std::enable_if_t< has_print_to_string< T >::value, std::string > inet::printToStringIfPossible (T *object, int evFlags)
 
template<typename T >
std::enable_if_t< has_print_to_string< T >::value, std::string > inet::printToStringIfPossible (const T *object, int evFlags)
 
template<typename T >
std::enable_if_t< has_print_to_string< T >::value, std::string > inet::printToStringIfPossible (T &object, int evFlags)
 
template<typename T >
std::enable_if_t< has_print_to_string< T >::value, std::string > inet::printToStringIfPossible (const T &object, int evFlags)
 
template<typename T >
std::enable_if_t< std::is_polymorphic< T >::value &&has_str< T >::value &&!has_print_to_string< T >::value, std::string > inet::printToStringIfPossible (T *object, int evFlags)
 
template<typename T >
std::enable_if_t< std::is_polymorphic< T >::value &&has_str< T >::value &&!has_print_to_string< T >::value, std::string > inet::printToStringIfPossible (const T &object, int evFlags)
 
template<typename T >
std::enable_if_t< std::is_polymorphic< T >::value &&has_str< T >::value &&!has_print_to_string< T >::value, std::string > inet::printToStringIfPossible (const T *object, int evFlags)
 
template<typename T >
std::enable_if_t< std::is_polymorphic< T >::value &&!has_str< T >::value &&!has_print_to_string< T >::value, std::string > inet::printToStringIfPossible (T *object, int evFlags)
 
template<typename T >
std::enable_if_t< std::is_polymorphic< T >::value &&!has_str< T >::value &&!has_print_to_string< T >::value, std::string > inet::printToStringIfPossible (const T *object, int evFlags)
 
template<typename T >
std::enable_if_t< std::is_polymorphic< T >::value &&!has_str< T >::value &&!has_print_to_string< T >::value, std::string > inet::printToStringIfPossible (const T &object, int evFlags)
 
template<typename T >
std::enable_if_t<!std::is_polymorphic< T >::value &&has_str< T >::value &&!has_print_to_string< T >::value, std::string > inet::printToStringIfPossible (const T &object, int evFlags)
 
template<typename T >
std::enable_if_t<!std::is_polymorphic< T >::value &&!has_str< T >::value &&!has_print_to_string< T >::value, std::string > inet::printToStringIfPossible (const T &object, int evFlags)