STLdoc
STLdocumentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Public Member Functions | Static Public Member Functions | Private Types | Private Member Functions | Private Attributes | Friends | List of all members
__gnu_debug::_Error_formatter Class Reference

#include <debug/formatter.h>

Classes

struct  _Is_iterator
 
struct  _Is_sequence
 
struct  _Parameter
 

Public Member Functions

template<typename _Iterator >
const _Error_formatter_M_iterator (const _Iterator &__it, const char *__name=0) const
 
const _Error_formatter_M_integer (long __value, const char *__name=0) const
 
const _Error_formatter_M_string (const char *__value, const char *__name=0) const
 
template<typename _Sequence >
const _Error_formatter_M_sequence (const _Sequence &__seq, const char *__name=0) const
 
const _Error_formatter_M_message (const char *__text) const
 
const _Error_formatter_M_message (_Debug_msg_id __id) const throw ()
 
_GLIBCXX_NORETURN void _M_error () const
 

Static Public Member Functions

static _Error_formatter _M_at (const char *__file, std::size_t __line)
 

Private Types

enum  _Constness { __unknown_constness, __const_iterator, __mutable_iterator, __last_constness }
 Whether an iterator is constant, mutable, or unknown. More...
 
enum  _Iterator_state {
  __unknown_state, __singular, __begin, __middle,
  __end, __before_begin, __last_state
}
 
enum  { __max_parameters = 9 }
 
enum  { _M_indent = 4 }
 

Private Member Functions

 _Error_formatter (const char *__file, std::size_t __line)
 
template<typename _Tp >
void _M_format_word (char *, int, const char *, _Tp) const throw ()
 
void _M_print_word (const char *__word) const
 
void _M_print_string (const char *__string) const
 
void _M_get_max_length () const throw ()
 

Private Attributes

const char * _M_file
 
std::size_t _M_line
 
_Parameter _M_parameters [__max_parameters]
 
std::size_t _M_num_parameters
 
const char * _M_text
 
std::size_t _M_max_length
 
std::size_t _M_column
 
bool _M_first_line
 
bool _M_wordwrap
 

Friends

struct _Parameter
 

Member Enumeration Documentation

anonymous enum
private
Enumerator
__max_parameters 
442 { __max_parameters = 9 };
anonymous enum
private
Enumerator
_M_indent 
450 { _M_indent = 4 } ;
Definition: formatter.h:450

Whether an iterator is constant, mutable, or unknown.

Enumerator
__unknown_constness 
__const_iterator 
__mutable_iterator 
__last_constness 
Enumerator
__unknown_state 
__singular 
__begin 
__middle 
__end 
__before_begin 
__last_state 
133  {
135  __singular, // singular, may still be attached to a sequence
136  __begin, // dereferenceable, and at the beginning
137  __middle, // dereferenceable, not at the beginning
138  __end, // past-the-end, may be at beginning if sequence empty
139  __before_begin, // before begin
141  };
Definition: formatter.h:138
Definition: formatter.h:136
Definition: formatter.h:137

Constructor & Destructor Documentation

__gnu_debug::_Error_formatter::_Error_formatter ( const char *  __file,
std::size_t  __line 
)
inlineprivate
425  : _M_file(__file), _M_line(__line), _M_num_parameters(0), _M_text(0),
426  _M_max_length(78), _M_column(1), _M_first_line(true), _M_wordwrap(false)
427  { _M_get_max_length(); }
const char * _M_file
Definition: formatter.h:444
std::size_t _M_num_parameters
Definition: formatter.h:447
const char * _M_text
Definition: formatter.h:448
bool _M_first_line
Definition: formatter.h:452
std::size_t _M_column
Definition: formatter.h:451
std::size_t _M_line
Definition: formatter.h:445
std::size_t _M_max_length
Definition: formatter.h:449
bool _M_wordwrap
Definition: formatter.h:453

Member Function Documentation

static _Error_formatter __gnu_debug::_Error_formatter::_M_at ( const char *  __file,
std::size_t  __line 
)
inlinestatic
458  { return _Error_formatter(__file, __line); }
_Error_formatter(const char *__file, std::size_t __line)
Definition: formatter.h:424
_GLIBCXX_NORETURN void __gnu_debug::_Error_formatter::_M_error ( ) const
template<typename _Tp >
void __gnu_debug::_Error_formatter::_M_format_word ( char *  ,
int  ,
const char *  ,
_Tp   
) const
throw (
)
private
void __gnu_debug::_Error_formatter::_M_get_max_length ( ) const
throw (
)
private
const _Error_formatter& __gnu_debug::_Error_formatter::_M_integer ( long  __value,
const char *  __name = 0 
) const
inline
389  {
391  _M_parameters[_M_num_parameters++] = _Parameter(__value, __name);
392  return *this;
393  }
std::size_t _M_num_parameters
Definition: formatter.h:447
_Parameter _M_parameters[__max_parameters]
Definition: formatter.h:446
friend struct _Parameter
Definition: formatter.h:374
__SIZE_TYPE__ size_t
Definition: stddef.h:212
template<typename _Iterator >
const _Error_formatter& __gnu_debug::_Error_formatter::_M_iterator ( const _Iterator &  __it,
const char *  __name = 0 
) const
inline
380  {
382  _M_parameters[_M_num_parameters++] = _Parameter(__it, __name,
383  _Is_iterator());
384  return *this;
385  }
std::size_t _M_num_parameters
Definition: formatter.h:447
_Parameter _M_parameters[__max_parameters]
Definition: formatter.h:446
friend struct _Parameter
Definition: formatter.h:374
__SIZE_TYPE__ size_t
Definition: stddef.h:212
const _Error_formatter& __gnu_debug::_Error_formatter::_M_message ( const char *  __text) const
inline
415  { _M_text = __text; return *this; }
const char * _M_text
Definition: formatter.h:448
const _Error_formatter& __gnu_debug::_Error_formatter::_M_message ( _Debug_msg_id  __id) const
throw (
)
void __gnu_debug::_Error_formatter::_M_print_string ( const char *  __string) const
private
void __gnu_debug::_Error_formatter::_M_print_word ( const char *  __word) const
private
template<typename _Sequence >
const _Error_formatter& __gnu_debug::_Error_formatter::_M_sequence ( const _Sequence &  __seq,
const char *  __name = 0 
) const
inline
406  {
408  _M_parameters[_M_num_parameters++] = _Parameter(__seq, __name,
409  _Is_sequence());
410  return *this;
411  }
std::size_t _M_num_parameters
Definition: formatter.h:447
_Parameter _M_parameters[__max_parameters]
Definition: formatter.h:446
friend struct _Parameter
Definition: formatter.h:374
__SIZE_TYPE__ size_t
Definition: stddef.h:212
const _Error_formatter& __gnu_debug::_Error_formatter::_M_string ( const char *  __value,
const char *  __name = 0 
) const
inline
397  {
399  _M_parameters[_M_num_parameters++] = _Parameter(__value, __name);
400  return *this;
401  }
std::size_t _M_num_parameters
Definition: formatter.h:447
_Parameter _M_parameters[__max_parameters]
Definition: formatter.h:446
friend struct _Parameter
Definition: formatter.h:374
__SIZE_TYPE__ size_t
Definition: stddef.h:212

Friends And Related Function Documentation

friend struct _Parameter
friend

Member Data Documentation

std::size_t __gnu_debug::_Error_formatter::_M_column
mutableprivate
const char* __gnu_debug::_Error_formatter::_M_file
private
bool __gnu_debug::_Error_formatter::_M_first_line
mutableprivate
std::size_t __gnu_debug::_Error_formatter::_M_line
private
std::size_t __gnu_debug::_Error_formatter::_M_max_length
mutableprivate
std::size_t __gnu_debug::_Error_formatter::_M_num_parameters
mutableprivate
_Parameter __gnu_debug::_Error_formatter::_M_parameters[__max_parameters]
mutableprivate
const char* __gnu_debug::_Error_formatter::_M_text
mutableprivate
bool __gnu_debug::_Error_formatter::_M_wordwrap
mutableprivate

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