Home | History | Annotate | Download | only in i18n
      1 /*
      2 **********************************************************************
      3 *   Copyright (C) 2001-2007, International Business Machines
      4 *   Corporation and others.  All Rights Reserved.
      5 **********************************************************************
      6 *   Date        Name        Description
      7 *   05/24/01    aliu        Creation.
      8 **********************************************************************
      9 */
     10 #ifndef TOUPPTRN_H
     11 #define TOUPPTRN_H
     12 
     13 #include "unicode/utypes.h"
     14 
     15 #if !UCONFIG_NO_TRANSLITERATION
     16 
     17 #include "unicode/translit.h"
     18 #include "casetrn.h"
     19 
     20 U_NAMESPACE_BEGIN
     21 
     22 /**
     23  * A transliterator that performs locale-sensitive toUpper()
     24  * case mapping.
     25  * @author Alan Liu
     26  */
     27 class UppercaseTransliterator : public CaseMapTransliterator {
     28 
     29  public:
     30 
     31     /**
     32      * Constructs a transliterator.
     33      * @param loc the given locale.
     34      */
     35     UppercaseTransliterator();
     36 
     37     /**
     38      * Destructor.
     39      */
     40     virtual ~UppercaseTransliterator();
     41 
     42     /**
     43      * Copy constructor.
     44      */
     45     UppercaseTransliterator(const UppercaseTransliterator&);
     46 
     47     /**
     48      * Transliterator API.
     49      * @return a copy of the object.
     50      */
     51     virtual Transliterator* clone(void) const;
     52 
     53     /**
     54      * ICU "poor man's RTTI", returns a UClassID for the actual class.
     55      */
     56     virtual UClassID getDynamicClassID() const;
     57 
     58     /**
     59      * ICU "poor man's RTTI", returns a UClassID for this class.
     60      */
     61     U_I18N_API static UClassID U_EXPORT2 getStaticClassID();
     62 
     63 private:
     64     /**
     65      * Assignment operator.
     66      */
     67     UppercaseTransliterator& operator=(const UppercaseTransliterator&);
     68 };
     69 
     70 U_NAMESPACE_END
     71 
     72 #endif /* #if !UCONFIG_NO_TRANSLITERATION */
     73 
     74 #endif
     75