United States    
COMPAQ STORE | PRODUCTS | SERVICES | SUPPORT
| CONTACT US | SEARCH
C++
ctype_byname (3C++std) - Tru64 UNIX
Standard C++ Library
Copyright 1996, Rogue Wave Software, Inc.

NAME

  ctype_byname - A facet that provides 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> specialization provide
  the same functionality as the ctype<charT> template, 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<charT> {
  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;
  };

CONSTRUCTOR

  explicit ctype_byname(const char* name, size_t refs = 0);
     Construct a ctype_byname facet.  The facet will provide character
     classification relative to the named locale specified by the name
     argument. If the refs argument is 0 then destruction of the object is
     delegated to the locale, or locales, containing it. This allows the user
     to ignore lifetime management issues.  On the other had, if refs  is 1
     then the object must be explicitly deleted; the locale will not do so.
     In this case, the object can be maintained across the lifetime of
     multiple locales.

SEE ALSO

  locale, facets, collate, ctype<char>, ctype_byname

STANDARDS CONFORMANCE

  ANSI X3J16/ISO WG21 Joint C++ Committee
  

1.800.AT.COMPAQ

privacy and legal statement