PStack  2.0
Stack trace printer for MSVC and GCC binaries
iomanip.hpp File Reference

Augment the C++ standard header file, iomanip. More...

#include "platform.hpp"
#include <iostream>
#include <iomanip>
#include "stack_allocated.hpp"
Include dependency graph for iomanip.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  psystem::format::internal::mask_ostream_output_tag< T >
 Internal, intermediate result of the mask() function. More...
 
struct  psystem::format::internal::hex_ostream_output_tag< T >
 Internal, intermediate result of the psystem::format::hex() function. More...
 
struct  psystem::format::internal::ptr_ostream_output_tag
 Internal, intermediate result of the ptr() function. More...
 
struct  psystem::format::internal::swtch_ostream_output_tag
 Internal, intermediate result of the mask() function. More...
 

Namespaces

 psystem
 Contains the process examination "system" and basic frameworks.
 
 psystem::format
 Formatting facilities for std::ostream output.
 
 psystem::format::internal
 Internal structures used for the psystem::format namespace.
 

Functions

std::ostream & operator<< (std::ostream &out, psystem::format::internal::swtch_ostream_output_tag &&v)
 Free function to format boolean values for std::ostream. More...
 
template<typename T >
std::ostream & operator<< (std::ostream &out, psystem::format::internal::hex_ostream_output_tag< T > &&v)
 Free function to format hexadecimal numbers for std::ostream. More...
 
template<typename T >
std::ostream & operator<< (std::ostream &out, psystem::format::internal::mask_ostream_output_tag< T > &&m)
 Free function to format bit-masks for std::ostream. More...
 
std::ostream & operator<< (std::ostream &out, psystem::format::internal::ptr_ostream_output_tag &&p)
 Free function to format pointers for std::ostream. More...
 

Bitmask Pretty-print

template<typename T >
internal::mask_ostream_output_tag< T > psystem::format::mask (T const m) noexcept
 Mark output stream data to be formatted as a bit-mask. More...
 

Hexadecimal Pretty-print

template<typename T >
internal::hex_ostream_output_tag< T > psystem::format::hex (T const v) noexcept
 Mark output stream data to be formatted as a hexadecimal number. More...
 

Pointer Pretty-print

internal::ptr_ostream_output_tag psystem::format::ptr (void const *p) noexcept
 Mark output stream data to be formatted as a memory address. More...
 
internal::ptr_ostream_output_tag psystem::format::ptr (psystem::address_t const p) noexcept
 Mark output stream data to be formatted as a memory address. More...
 
template<typename R , typename... Args>
internal::ptr_ostream_output_tag psystem::format::ptr (R(*p)(Args...)) noexcept
 Mark a function pointer to be formatted to an output stream as a memory address. More...
 

Boolean Value Pretty-print

internal::swtch_ostream_output_tag psystem::format::swtch (bool const s) noexcept
 Mark output stream data to be formatted as an on/off switch. More...
 

Detailed Description

Augment the C++ standard header file, iomanip.

Author
Matt Bisson
Date
18 August, 2014
Since
PSystem 2.0
Version
PSystem 2.0

Function Documentation

std::ostream& operator<< ( std::ostream &  out,
psystem::format::internal::swtch_ostream_output_tag &&  v 
)
inline

Free function to format boolean values for std::ostream.

Parameters
[in,out]outThe output stream.
[in]vThe data to format.
Returns
The output stream after output.
template<typename T >
std::ostream& operator<< ( std::ostream &  out,
psystem::format::internal::hex_ostream_output_tag< T > &&  v 
)
inline

Free function to format hexadecimal numbers for std::ostream.

Template Parameters
TThe data-typed passed to psystem::format::hex()
Parameters
[in,out]outThe output stream.
[in]vThe data to format.
Returns
The output stream after output.
template<typename T >
std::ostream& operator<< ( std::ostream &  out,
psystem::format::internal::mask_ostream_output_tag< T > &&  m 
)
inline

Free function to format bit-masks for std::ostream.

Template Parameters
TThe data-typed passed to psystem::format::mask()
Parameters
[in,out]outThe output stream.
[in]mThe data to format.
Returns
The output stream after output.
std::ostream& operator<< ( std::ostream &  out,
psystem::format::internal::ptr_ostream_output_tag &&  p 
)
inline

Free function to format pointers for std::ostream.

Parameters
[in,out]outThe output stream.
[in]pThe data to format.
Returns
The output stream after output.