Standard C++ Library
Copyright 1998, Rogue Wave Software, Inc.
NAME
ctype_byname
- A facet that includes character classification facilities
based on the named locales.
SYNOPSIS
#include <locale>
template <class charT> class ctype_byname;
template <> class ctype_byname<char>;
DESCRIPTION
ctype_byname<charT> template and ctype_byname<char> special-
ization include the same functions as the ctype<charT> tem-
plate, but specific to a particular named locale. For a
description of the member functions of ctype_byname, see the
reference for ctype<charT>. Only the constructor is
described here.
INTERFACE
template <class charT>
class ctype_byname : public ctype<charT> {
public:
explicit ctype_byname(const char*, size_t = 0);
protected:
~ctype_byname(); // virtual
virtual bool do_is(mask, charT) const;
virtual const charT* do_is(const charT*, const charT*,
mask*) const;
virtual const char* do_scan_is(mask,
const charT*,
const charT*) const;
virtual const char* do_scan_not(mask,
const charT*,
const charT*) const;
virtual charT do_toupper(charT) const;
virtual const charT* do_toupper(charT*,
const charT*) const;
virtual charT do_tolower(charT) const;
virtual const charT* do_tolower(charT*,
const charT*) const;
virtual charT do_widen(char) const;
virtual const char* do_widen(const char*, const char*,
charT*) const;
virtual char do_narrow(charT, char) const;
virtual const charT* do_narrow(const charT*, const charT*,
char, char*) const;
};
class ctype_byname<char> : public ctype<char> {
public:
explicit ctype_byname(const char*, size_t = 0);
protected:
~ctype_byname(); // virtual
virtual char do_toupper(char) const;
virtual const char* do_toupper(char*, const char*) const;
virtual char do_tolower(char) const;
virtual const char* do_tolower(char*, const char*) const;
};
CONSTRUCTORS
explicit ctype_byname(const char* name, size_t refs = 0);
Constructs a ctype_byname facet. The facet classifies
characters relative to the named locale specified by the
name argument. If the refs argument is 0, then destruc-
tion of the object is delegated to the locale, or
locales, containing it. This allows the user to ignore
lifetime management issues. On the other hand, if refs is
1, then the object must be explicitly deleted; the locale
does not do so.
SEE ALSO
locale, facets, collate, ctype, ctype_byname