ndn::ostream_joiner< DelimT, CharT, Traits > Class Template Reference

#include <ndn-cxx/util/ostream-joiner.hpp>

Public Types

typedef CharT char_type
 
typedef void difference_type
 
typedef std::output_iterator_tag iterator_category
 
typedef std::basic_ostream< CharT, Traits > ostream_type
 
typedef void pointer
 
typedef void reference
 
typedef Traits traits_type
 
typedef void value_type
 

Public Member Functions

 ostream_joiner (ostream_type &os, const DelimT &delimiter) noexcept(std::is_nothrow_copy_constructible< DelimT >::value)
 
 ostream_joiner (ostream_type &os, DelimT &&delimiter) noexcept(std::is_nothrow_move_constructible< DelimT >::value)
 
ostream_joineroperator* () noexcept
 
ostream_joineroperator++ () noexcept
 
ostream_joineroperator++ (int) noexcept
 
template<typename T >
ostream_joineroperator= (const T &value)
 

Detailed Description

template<typename DelimT, typename CharT = char, typename Traits = std::char_traits<CharT>>
class ndn::ostream_joiner< DelimT, CharT, Traits >

Definition at line 55 of file ostream-joiner.hpp.

Member Typedef Documentation

◆ char_type

template<typename DelimT , typename CharT = char, typename Traits = std::char_traits<CharT>>
typedef CharT ndn::ostream_joiner< DelimT, CharT, Traits >::char_type

Definition at line 58 of file ostream-joiner.hpp.

◆ difference_type

template<typename DelimT , typename CharT = char, typename Traits = std::char_traits<CharT>>
typedef void ndn::ostream_joiner< DelimT, CharT, Traits >::difference_type

Definition at line 63 of file ostream-joiner.hpp.

◆ iterator_category

template<typename DelimT , typename CharT = char, typename Traits = std::char_traits<CharT>>
typedef std::output_iterator_tag ndn::ostream_joiner< DelimT, CharT, Traits >::iterator_category

Definition at line 61 of file ostream-joiner.hpp.

◆ ostream_type

template<typename DelimT , typename CharT = char, typename Traits = std::char_traits<CharT>>
typedef std::basic_ostream<CharT, Traits> ndn::ostream_joiner< DelimT, CharT, Traits >::ostream_type

Definition at line 60 of file ostream-joiner.hpp.

◆ pointer

template<typename DelimT , typename CharT = char, typename Traits = std::char_traits<CharT>>
typedef void ndn::ostream_joiner< DelimT, CharT, Traits >::pointer

Definition at line 64 of file ostream-joiner.hpp.

◆ reference

template<typename DelimT , typename CharT = char, typename Traits = std::char_traits<CharT>>
typedef void ndn::ostream_joiner< DelimT, CharT, Traits >::reference

Definition at line 65 of file ostream-joiner.hpp.

◆ traits_type

template<typename DelimT , typename CharT = char, typename Traits = std::char_traits<CharT>>
typedef Traits ndn::ostream_joiner< DelimT, CharT, Traits >::traits_type

Definition at line 59 of file ostream-joiner.hpp.

◆ value_type

template<typename DelimT , typename CharT = char, typename Traits = std::char_traits<CharT>>
typedef void ndn::ostream_joiner< DelimT, CharT, Traits >::value_type

Definition at line 62 of file ostream-joiner.hpp.

Constructor & Destructor Documentation

◆ ostream_joiner() [1/2]

template<typename DelimT , typename CharT = char, typename Traits = std::char_traits<CharT>>
ndn::ostream_joiner< DelimT, CharT, Traits >::ostream_joiner ( ostream_type os,
const DelimT &  delimiter 
)
inlinenoexcept

Definition at line 67 of file ostream-joiner.hpp.

◆ ostream_joiner() [2/2]

template<typename DelimT , typename CharT = char, typename Traits = std::char_traits<CharT>>
ndn::ostream_joiner< DelimT, CharT, Traits >::ostream_joiner ( ostream_type os,
DelimT &&  delimiter 
)
inlinenoexcept

Definition at line 73 of file ostream-joiner.hpp.

Member Function Documentation

◆ operator*()

template<typename DelimT , typename CharT = char, typename Traits = std::char_traits<CharT>>
ostream_joiner& ndn::ostream_joiner< DelimT, CharT, Traits >::operator* ( )
inlinenoexcept

Definition at line 92 of file ostream-joiner.hpp.

◆ operator++() [1/2]

template<typename DelimT , typename CharT = char, typename Traits = std::char_traits<CharT>>
ostream_joiner& ndn::ostream_joiner< DelimT, CharT, Traits >::operator++ ( )
inlinenoexcept

Definition at line 98 of file ostream-joiner.hpp.

◆ operator++() [2/2]

template<typename DelimT , typename CharT = char, typename Traits = std::char_traits<CharT>>
ostream_joiner& ndn::ostream_joiner< DelimT, CharT, Traits >::operator++ ( int  )
inlinenoexcept

Definition at line 104 of file ostream-joiner.hpp.

◆ operator=()

template<typename DelimT , typename CharT = char, typename Traits = std::char_traits<CharT>>
template<typename T >
ostream_joiner& ndn::ostream_joiner< DelimT, CharT, Traits >::operator= ( const T &  value)
inline

Definition at line 81 of file ostream-joiner.hpp.