ReactOS  0.4.14-dev-293-g2b39b42
codecvt< _InternT, _ExternT, _StateT > Class Template Reference

#include <_codecvt.h>

Inheritance diagram for codecvt< _InternT, _ExternT, _StateT >:
Collaboration diagram for codecvt< _InternT, _ExternT, _StateT >:

Public Types

typedef _InternT intern_type
 
typedef _ExternT extern_type
 
typedef _StateT state_type
 
- Public Types inherited from codecvt_base
enum  result { ok, partial, error, noconv }
 

Public Member Functions

 codecvt (size_t __refs=0)
 
result out (state_type &__state, const intern_type *__from, const intern_type *__from_end, const intern_type *&__from_next, extern_type *__to, extern_type *__to_limit, extern_type *&__to_next) const
 
result unshift (state_type &__state, extern_type *__to, extern_type *__to_limit, extern_type *&__to_next) const
 
result in (state_type &__state, const extern_type *__from, const extern_type *__from_end, const extern_type *&__from_next, intern_type *__to, intern_type *__to_limit, intern_type *&__to_next) const
 
int encoding () const _STLP_NOTHROW
 
bool always_noconv () const _STLP_NOTHROW
 
int length (state_type &__state, const extern_type *__from, const extern_type *__from_end, size_t __max) const
 
int max_length () const _STLP_NOTHROW
 

Static Public Attributes

static locale::id id
 

Protected Member Functions

 ~codecvt ()
 
virtual result do_out (state_type &, const intern_type *__from, const intern_type *, const intern_type *&__from_next, extern_type *__to, extern_type *, extern_type *&__to_next) const
 
virtual result do_in (state_type &, const extern_type *__from, const extern_type *, const extern_type *&__from_next, intern_type *__to, intern_type *, intern_type *&__to_next) const
 
virtual result do_unshift (state_type &, extern_type *__to, extern_type *, extern_type *&__to_next) const
 
virtual int do_encoding () const _STLP_NOTHROW
 
virtual bool do_always_noconv () const _STLP_NOTHROW
 
virtual int do_length (state_type &, const extern_type *__from, const extern_type *__end, size_t __max) const
 
virtual int do_max_length () const _STLP_NOTHROW
 
- Protected Member Functions inherited from locale::facet
 facet (size_t __init_count=0)
 
virtual ~facet ()
 
- Protected Member Functions inherited from _Refcount_Base
 _Refcount_Base (__stl_atomic_t __n)
 
__stl_atomic_t _M_incr ()
 
__stl_atomic_t _M_decr ()
 

Private Member Functions

 codecvt (const codecvt< intern_type, extern_type, state_type > &)
 
codecvt< intern_type, extern_type, state_type > & operator= (const codecvt< intern_type, extern_type, state_type > &)
 

Detailed Description

template<class _InternT, class _ExternT, class _StateT>
class codecvt< _InternT, _ExternT, _StateT >

Definition at line 46 of file _codecvt.h.

Member Typedef Documentation

◆ extern_type

template<class _InternT, class _ExternT, class _StateT>
typedef _ExternT codecvt< _InternT, _ExternT, _StateT >::extern_type

Definition at line 49 of file _codecvt.h.

◆ intern_type

template<class _InternT, class _ExternT, class _StateT>
typedef _InternT codecvt< _InternT, _ExternT, _StateT >::intern_type

Definition at line 48 of file _codecvt.h.

◆ state_type

template<class _InternT, class _ExternT, class _StateT>
typedef _StateT codecvt< _InternT, _ExternT, _StateT >::state_type

Definition at line 50 of file _codecvt.h.

Constructor & Destructor Documentation

◆ codecvt() [1/2]

template<class _InternT, class _ExternT, class _StateT>
codecvt< _InternT, _ExternT, _StateT >::codecvt ( size_t  __refs = 0)
inlineexplicit

Definition at line 60 of file _codecvt.h.

60 : locale::facet(__refs) {}

◆ ~codecvt()

template<class _InternT, class _ExternT, class _StateT>
codecvt< _InternT, _ExternT, _StateT >::~codecvt ( )
inlineprotected

Definition at line 115 of file _codecvt.h.

115 {}

◆ codecvt() [2/2]

template<class _InternT, class _ExternT, class _StateT>
codecvt< _InternT, _ExternT, _StateT >::codecvt ( const codecvt< intern_type, extern_type, state_type > &  )
private

Member Function Documentation

◆ always_noconv()

template<class _InternT, class _ExternT, class _StateT>
bool codecvt< _InternT, _ExternT, _StateT >::always_noconv ( ) const
inline

Definition at line 100 of file _codecvt.h.

100 { return do_always_noconv(); }
virtual bool do_always_noconv() const _STLP_NOTHROW
Definition: _codecvt.h:144

◆ do_always_noconv()

template<class _InternT, class _ExternT, class _StateT>
virtual bool codecvt< _InternT, _ExternT, _StateT >::do_always_noconv ( ) const
inlineprotectedvirtual

Definition at line 144 of file _codecvt.h.

145  { return true; }

◆ do_encoding()

template<class _InternT, class _ExternT, class _StateT>
virtual int codecvt< _InternT, _ExternT, _StateT >::do_encoding ( ) const
inlineprotectedvirtual

Definition at line 141 of file _codecvt.h.

142  { return 1; }

◆ do_in()

template<class _InternT, class _ExternT, class _StateT>
virtual result codecvt< _InternT, _ExternT, _StateT >::do_in ( state_type ,
const extern_type __from,
const extern_type ,
const extern_type *&  __from_next,
intern_type __to,
intern_type ,
intern_type *&  __to_next 
) const
inlineprotectedvirtual

Definition at line 126 of file _codecvt.h.

133  { __from_next = __from; __to_next = __to; return noconv; }

◆ do_length()

template<class _InternT, class _ExternT, class _StateT>
virtual int codecvt< _InternT, _ExternT, _StateT >::do_length ( state_type ,
const extern_type __from,
const extern_type __end,
size_t  __max 
) const
inlineprotectedvirtual

Definition at line 147 of file _codecvt.h.

151  { return (int)(min) ( __STATIC_CAST(size_t, (__end - __from)), __max); }
#define __STATIC_CAST(__x, __y)
Definition: features.h:585
#define min(a, b)
Definition: monoChain.cc:55
#define __max(a, b)
Definition: stdlib.h:113

◆ do_max_length()

template<class _InternT, class _ExternT, class _StateT>
virtual int codecvt< _InternT, _ExternT, _StateT >::do_max_length ( ) const
inlineprotectedvirtual

Definition at line 153 of file _codecvt.h.

154  { return 1; }

◆ do_out()

template<class _InternT, class _ExternT, class _StateT>
virtual result codecvt< _InternT, _ExternT, _StateT >::do_out ( state_type ,
const intern_type __from,
const intern_type ,
const intern_type *&  __from_next,
extern_type __to,
extern_type ,
extern_type *&  __to_next 
) const
inlineprotectedvirtual

Definition at line 117 of file _codecvt.h.

124  { __from_next = __from; __to_next = __to; return noconv; }

◆ do_unshift()

template<class _InternT, class _ExternT, class _StateT>
virtual result codecvt< _InternT, _ExternT, _StateT >::do_unshift ( state_type ,
extern_type __to,
extern_type ,
extern_type *&  __to_next 
) const
inlineprotectedvirtual

Definition at line 135 of file _codecvt.h.

139  { __to_next = __to; return noconv; }

◆ encoding()

template<class _InternT, class _ExternT, class _StateT>
int codecvt< _InternT, _ExternT, _StateT >::encoding ( ) const
inline

Definition at line 98 of file _codecvt.h.

98 { return do_encoding(); }
virtual int do_encoding() const _STLP_NOTHROW
Definition: _codecvt.h:141

◆ in()

template<class _InternT, class _ExternT, class _StateT>
result codecvt< _InternT, _ExternT, _StateT >::in ( state_type __state,
const extern_type __from,
const extern_type __from_end,
const extern_type *&  __from_next,
intern_type __to,
intern_type __to_limit,
intern_type *&  __to_next 
) const
inline

Definition at line 84 of file _codecvt.h.

90  {
91  _STLP_VERBOSE_ASSERT(__from <= __from_end, _StlMsg_INVALID_ARGUMENT)
92  _STLP_VERBOSE_ASSERT(__to <= __to_limit, _StlMsg_INVALID_ARGUMENT)
93  return do_in(__state,
94  __from, __from_end, __from_next,
95  __to, __to_limit, __to_next);
96  }
virtual result do_in(state_type &, const extern_type *__from, const extern_type *, const extern_type *&__from_next, intern_type *__to, intern_type *, intern_type *&__to_next) const
Definition: _codecvt.h:126
#define _STLP_VERBOSE_ASSERT(expr, diagnostic)
Definition: _debug.h:439

◆ length()

template<class _InternT, class _ExternT, class _StateT>
int codecvt< _InternT, _ExternT, _StateT >::length ( state_type __state,
const extern_type __from,
const extern_type __from_end,
size_t  __max 
) const
inline

Definition at line 102 of file _codecvt.h.

105  {
106  _STLP_VERBOSE_ASSERT(__from <= __from_end, _StlMsg_INVALID_ARGUMENT)
107  return do_length(__state, __from, __from_end, __max);
108  }
virtual int do_length(state_type &, const extern_type *__from, const extern_type *__end, size_t __max) const
Definition: _codecvt.h:147
#define __max(a, b)
Definition: stdlib.h:113
#define _STLP_VERBOSE_ASSERT(expr, diagnostic)
Definition: _debug.h:439

◆ max_length()

template<class _InternT, class _ExternT, class _StateT>
int codecvt< _InternT, _ExternT, _StateT >::max_length ( ) const
inline

Definition at line 110 of file _codecvt.h.

110 { return do_max_length(); }
virtual int do_max_length() const _STLP_NOTHROW
Definition: _codecvt.h:153

◆ operator=()

template<class _InternT, class _ExternT, class _StateT>
codecvt<intern_type, extern_type, state_type>& codecvt< _InternT, _ExternT, _StateT >::operator= ( const codecvt< intern_type, extern_type, state_type > &  )
private

◆ out()

template<class _InternT, class _ExternT, class _StateT>
result codecvt< _InternT, _ExternT, _StateT >::out ( state_type __state,
const intern_type __from,
const intern_type __from_end,
const intern_type *&  __from_next,
extern_type __to,
extern_type __to_limit,
extern_type *&  __to_next 
) const
inline

Definition at line 62 of file _codecvt.h.

68  {
69  _STLP_VERBOSE_ASSERT(__from <= __from_end, _StlMsg_INVALID_ARGUMENT)
70  _STLP_VERBOSE_ASSERT(__to <= __to_limit, _StlMsg_INVALID_ARGUMENT)
71  return do_out(__state,
72  __from, __from_end, __from_next,
73  __to, __to_limit, __to_next);
74  }
virtual result do_out(state_type &, const intern_type *__from, const intern_type *, const intern_type *&__from_next, extern_type *__to, extern_type *, extern_type *&__to_next) const
Definition: _codecvt.h:117
#define _STLP_VERBOSE_ASSERT(expr, diagnostic)
Definition: _debug.h:439

◆ unshift()

template<class _InternT, class _ExternT, class _StateT>
result codecvt< _InternT, _ExternT, _StateT >::unshift ( state_type __state,
extern_type __to,
extern_type __to_limit,
extern_type *&  __to_next 
) const
inline

Definition at line 76 of file _codecvt.h.

79  {
80  _STLP_VERBOSE_ASSERT(__to <= __to_limit, _StlMsg_INVALID_ARGUMENT)
81  return do_unshift(__state, __to, __to_limit, __to_next);
82  }
virtual result do_unshift(state_type &, extern_type *__to, extern_type *, extern_type *&__to_next) const
Definition: _codecvt.h:135
#define _STLP_VERBOSE_ASSERT(expr, diagnostic)
Definition: _debug.h:439

Member Data Documentation

◆ id

template<class _InternT, class _ExternT, class _StateT>
locale::id codecvt< _InternT, _ExternT, _StateT >::id
static

Definition at line 112 of file _codecvt.h.


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