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