Jpp  16.0.3
the software that should make you happy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Private Member Functions | Private Attributes | List of all members
STREAM::JStream Struct Reference

Auxiliary class for format stream. More...

#include <JStreamAvailable.hh>

Public Member Functions

 JStream (std::ostream &out, const std::string &message)
 Constructor. More...
 
template<class T >
std::ostream & operator<< (const T &value)
 Write value to output stream. More...
 

Private Member Functions

template<class T >
std::ostream & print (std::ostream &out, const T &value, const JLANG::JBool< true > &option)
 Print value if given option is true. More...
 
template<class T >
std::ostream & print (std::ostream &out, const T &value, const JLANG::JBool< false > &option)
 Print value if given option is true. More...
 

Private Attributes

std::ostream & out
 
std::string message
 

Detailed Description

Auxiliary class for format stream.

Definition at line 86 of file JStreamAvailable.hh.

Constructor & Destructor Documentation

STREAM::JStream::JStream ( std::ostream &  out,
const std::string &  message 
)
inline

Constructor.

Parameters
outoutput stream
messagemessage printed in case operator std::ostream<< is unavailable

Definition at line 94 of file JStreamAvailable.hh.

94  :
95  out (out),
97  {}
std::ostream & out

Member Function Documentation

template<class T >
std::ostream& STREAM::JStream::operator<< ( const T value)
inline

Write value to output stream.

Parameters
valuevalue
Returns
this JStream

Definition at line 107 of file JStreamAvailable.hh.

108  {
109  using namespace JPP;
110 
111  return print(out, value, JBool<JStreamAvailable<T>::has_ostream>());
112  }
std::ostream & print(std::ostream &out, const T &value, const JLANG::JBool< true > &option)
Print value if given option is true.
std::ostream & out
Test availability of stream operators.
template<class T >
std::ostream& STREAM::JStream::print ( std::ostream &  out,
const T value,
const JLANG::JBool< true > &  option 
)
inlineprivate

Print value if given option is true.

Parameters
outoutput stream
valuevalue
optiontrue
Returns
output stream

Definition at line 124 of file JStreamAvailable.hh.

125  {
126  return out << value;
127  }
std::ostream & out
template<class T >
std::ostream& STREAM::JStream::print ( std::ostream &  out,
const T value,
const JLANG::JBool< false > &  option 
)
inlineprivate

Print value if given option is true.

Parameters
outoutput stream
valuevalue
optionfalse
Returns
output stream

Definition at line 138 of file JStreamAvailable.hh.

139  {
140  return out << message;
141  }
std::ostream & out

Member Data Documentation

std::ostream& STREAM::JStream::out
private

Definition at line 143 of file JStreamAvailable.hh.

std::string STREAM::JStream::message
private

Definition at line 144 of file JStreamAvailable.hh.


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