Test availability of stream operators.  
 More...
#include <JStreamAvailable.hh>
 | 
| static const bool  | has_istream = std::is_same<std::istream&, decltype(is<T>(0))>::value | 
|   | true if std::istream& operator>>(std::istream&, T&) is defined; else false  More...
  | 
|   | 
| static const bool  | has_ostream = std::is_same<std::ostream&, decltype(os<T>(0))>::value | 
|   | true if std::ostream& operator<<(std::ostream&, const T&) is defined; else false  More...
  | 
|   | 
 | 
| template<class U >  | 
| static auto  | is (U *) -> decltype(std::declval< std::istream & >() >> std::declval< U & >()) | 
|   | 
| template<class U >  | 
| static auto  | os (U *) -> decltype(std::declval< std::ostream & >()<< std::declval< const U & >()) | 
|   | 
| template<typename >  | 
| static auto  | is (...) -> std::false_type | 
|   | 
| template<typename >  | 
| static auto  | os (...) -> std::false_type | 
|   | 
template<class T>
class JStreamAvailable< T >
Test availability of stream operators. 
- Author
 - mdejong 
 
Definition at line 19 of file JStreamAvailable.hh.
 
template<class T > 
template<class U > 
  
  
      
        
          | static auto JStreamAvailable< T >::is  | 
          ( | 
          U *  | 
           | ) | 
           ->  decltype(std::declval< std::istream & >() >> std::declval< U & >()) | 
         
       
   | 
  
staticprivate   | 
  
 
 
template<class T > 
template<class U > 
  
  
      
        
          | static auto JStreamAvailable< T >::os  | 
          ( | 
          U *  | 
           | ) | 
           ->  decltype(std::declval< std::ostream & >()<< std::declval< const U & >()) | 
         
       
   | 
  
staticprivate   | 
  
 
 
template<class T > 
template<typename > 
 
 
template<class T > 
template<typename > 
 
 
template<class T > 
  
  
      
        
          | const bool JStreamAvailable< T >::has_istream = std::is_same<std::istream&, decltype(is<T>(0))>::value | 
         
       
   | 
  
static   | 
  
 
true if std::istream& operator>>(std::istream&, T&) is defined; else false 
Definition at line 28 of file JStreamAvailable.hh.
 
 
template<class T > 
  
  
      
        
          | const bool JStreamAvailable< T >::has_ostream = std::is_same<std::ostream&, decltype(os<T>(0))>::value | 
         
       
   | 
  
static   | 
  
 
true if std::ostream& operator<<(std::ostream&, const T&) is defined; else false 
Definition at line 29 of file JStreamAvailable.hh.
 
 
The documentation for this class was generated from the following file: