WireCellToolkit
Wire Cell Simulation, Signal Process and Reconstruction Toolki for Liquid Argon Detectors
basic_writer< Range > Class Template Reference

#include <format.h>

Public Types

typedef Range::value_type char_type
 
typedef basic_format_specs< char_typeformat_specs
 

Public Member Functions

 basic_writer (Range out, internal::locale_ref loc=internal::locale_ref())
 
iterator out () const
 
void write (int value)
 
void write (long value)
 
void write (long long value)
 
void write (unsigned value)
 
void write (unsigned long value)
 
void write (unsigned long long value)
 
template<typename T , typename FormatSpec , typename... FormatSpecs>
std::enable_if< std::is_integral< T >::value, void >::type write (T value, FormatSpec spec, FormatSpecs... specs)
 
void write (double value)
 
void write (long double value)
 
void write (char value)
 
void write (wchar_t value)
 
void write (string_view value)
 
void write (wstring_view value)
 
template<typename Char >
void write (const Char *s, std::size_t size, const align_spec &spec)
 
template<typename Char >
void write (basic_string_view< Char > s, const format_specs &spec=format_specs())
 
template<typename T >
std::enable_if< std::is_same< T, void >::value >::type write (const T *p)
 

Public Attributes

decltype(internal::declval< Range >().begin()) typedef iterator
 

Friends

template<typename Char >
class internal::arg_formatter_base
 

Detailed Description

template<typename Range>
class basic_writer< Range >

This template provides operations for formatting and writing data into a character range.

Definition at line 330 of file format.h.

Member Typedef Documentation

◆ char_type

template<typename Range>
typedef Range::value_type basic_writer< Range >::char_type

Definition at line 2261 of file format.h.

◆ format_specs

template<typename Range>
typedef basic_format_specs<char_type> basic_writer< Range >::format_specs

Definition at line 2263 of file format.h.

Constructor & Destructor Documentation

◆ basic_writer()

template<typename Range>
basic_writer< Range >::basic_writer ( Range  out,
internal::locale_ref  loc = internal::locale_ref() 
)
inlineexplicit

Constructs a basic_writer object.

Definition at line 2567 of file format.h.

Member Function Documentation

◆ out()

template<typename Range>
iterator basic_writer< Range >::out ( ) const
inline

Definition at line 2571 of file format.h.

◆ write() [1/16]

template<typename Range>
void basic_writer< Range >::write ( int  value)
inline

Definition at line 2573 of file format.h.

Here is the caller graph for this function:

◆ write() [2/16]

template<typename Range>
void basic_writer< Range >::write ( long  value)
inline

Definition at line 2574 of file format.h.

◆ write() [3/16]

template<typename Range>
void basic_writer< Range >::write ( long long  value)
inline

Definition at line 2575 of file format.h.

◆ write() [4/16]

template<typename Range>
void basic_writer< Range >::write ( unsigned  value)
inline

Definition at line 2577 of file format.h.

◆ write() [5/16]

template<typename Range>
void basic_writer< Range >::write ( unsigned long  value)
inline

Definition at line 2578 of file format.h.

◆ write() [6/16]

template<typename Range>
void basic_writer< Range >::write ( unsigned long long  value)
inline

Definition at line 2579 of file format.h.

◆ write() [7/16]

template<typename Range>
template<typename T , typename FormatSpec , typename... FormatSpecs>
std::enable_if<std::is_integral<T>::value, void>::type basic_writer< Range >::write ( value,
FormatSpec  spec,
FormatSpecs...  specs 
)
inline

Formats value and writes it to the buffer.

Definition at line 2588 of file format.h.

◆ write() [8/16]

template<typename Range>
void basic_writer< Range >::write ( double  value)
inline

Definition at line 2594 of file format.h.

◆ write() [9/16]

template<typename Range>
void basic_writer< Range >::write ( long double  value)
inline

Formats value using the general format for floating-point numbers ('g') and writes it to the buffer.

Definition at line 2604 of file format.h.

◆ write() [10/16]

template<typename Range>
void basic_writer< Range >::write ( char  value)
inline

Writes a character to the buffer.

Definition at line 2609 of file format.h.

Here is the call graph for this function:

◆ write() [11/16]

template<typename Range>
void basic_writer< Range >::write ( wchar_t  value)
inline

Definition at line 2612 of file format.h.

Here is the call graph for this function:

◆ write() [12/16]

template<typename Range>
void basic_writer< Range >::write ( string_view  value)
inline

Writes value to the buffer.

Definition at line 2622 of file format.h.

Here is the call graph for this function:

◆ write() [13/16]

template<typename Range>
void basic_writer< Range >::write ( wstring_view  value)
inline

Definition at line 2626 of file format.h.

Here is the call graph for this function:

◆ write() [14/16]

template<typename Range>
template<typename Char >
void basic_writer< Range >::write ( const Char *  s,
std::size_t  size,
const align_spec spec 
)
inline

Definition at line 2634 of file format.h.

◆ write() [15/16]

template<typename Range>
template<typename Char >
void basic_writer< Range >::write ( basic_string_view< Char >  s,
const format_specs spec = format_specs() 
)
inline

Definition at line 2639 of file format.h.

◆ write() [16/16]

template<typename Range>
template<typename T >
std::enable_if<std::is_same<T, void>::value>::type basic_writer< Range >::write ( const T *  p)
inline

Definition at line 2650 of file format.h.

Friends And Related Function Documentation

◆ internal::arg_formatter_base

template<typename Range>
template<typename Char >
friend class internal::arg_formatter_base
friend

Definition at line 2563 of file format.h.

Member Data Documentation

◆ iterator

template<typename Range>
decltype(internal::declval<Range>().begin()) typedef basic_writer< Range >::iterator

Definition at line 2262 of file format.h.


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