libstdc++
GNU C++ library
Loading...
Searching...
No Matches
std::__codecvt_abstract_base< _InternT, _ExternT, _StateT > Class Template Referenceabstract

#include "codecvt.h"

Inheritance diagram for std::__codecvt_abstract_base< _InternT, _ExternT, _StateT >:
Inheritance graph
Collaboration diagram for std::__codecvt_abstract_base< _InternT, _ExternT, _StateT >:
Collaboration graph

Public Types

typedef _ExternT extern_type
typedef _InternT intern_type
typedef codecvt_base::result result
typedef _StateT state_type

Public Member Functions

bool always_noconv () const throw ()
int encoding () const throw ()
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_end, intern_type *&__to_next) const
int length (state_type &__state, const extern_type *__from, const extern_type *__end, size_t __max) const
int max_length () const throw ()
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_end, extern_type *&__to_next) const
result unshift (state_type &__state, extern_type *__to, extern_type *__to_end, extern_type *&__to_next) const

Protected Member Functions

 __codecvt_abstract_base (size_t __refs=0)
virtual ~__codecvt_abstract_base ()
virtual bool do_always_noconv () const throw () =0
virtual int do_encoding () const throw () =0
virtual result do_in (state_type &__state, const extern_type *__from, const extern_type *__from_end, const extern_type *&__from_next, intern_type *__to, intern_type *__to_end, intern_type *&__to_next) const =0
virtual int do_length (state_type &, const extern_type *__from, const extern_type *__end, size_t __max) const =0
virtual int do_max_length () const throw () =0
virtual result do_out (state_type &__state, const intern_type *__from, const intern_type *__from_end, const intern_type *&__from_next, extern_type *__to, extern_type *__to_end, extern_type *&__to_next) const =0
virtual result do_unshift (state_type &__state, extern_type *__to, extern_type *__to_end, extern_type *&__to_next) const =0

Static Protected Member Functions

static __c_locale _S_clone_c_locale (__c_locale &__cloc) throw ()
static void _S_create_c_locale (__c_locale &__cloc, const char *__s, __c_locale __old=0)
static void _S_destroy_c_locale (__c_locale &__cloc)
static __c_locale _S_get_c_locale ()
static const char * _S_get_c_name () throw ()
static __c_locale _S_lc_ctype_c_locale (__c_locale __cloc, const char *__s)

Private Member Functions

void _M_add_reference () const throw ()
const facet_M_cow_shim (const id *) const
void _M_remove_reference () const throw ()
const facet_M_sso_shim (const id *) const

Static Private Member Functions

static void _S_initialize_once ()

Private Attributes

_Atomic_word _M_refcount

Static Private Attributes

static __c_locale _S_c_locale
static const char _S_c_name [2]
static __gthread_once_t _S_once

Detailed Description

template<typename _InternT, typename _ExternT, typename _StateT>
class std::__codecvt_abstract_base< _InternT, _ExternT, _StateT >

Common base for codecvt functions.

This template class provides implementations of the public functions that forward to the protected virtual functions.

This template also provides abstract stubs for the protected virtual functions.

Definition at line 76 of file codecvt.h.


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