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 TOLOWTRN_H 13 #define TOLOWTRN_H 14 15 #include "unicode/utypes.h" 16 17 #if !UCONFIG_NO_TRANSLITERATION 18 19 #include "unicode/translit.h" 20 #include "casetrn.h" 21 22 U_NAMESPACE_BEGIN 23 24 /** 25 * A transliterator that performs locale-sensitive toLower() 26 * case mapping. 27 * @author Alan Liu 28 */ 29 class LowercaseTransliterator : public CaseMapTransliterator { 30 31 public: 32 33 /** 34 * Constructs a transliterator. 35 * @param loc the given locale. 36 */ 37 LowercaseTransliterator(); 38 39 /** 40 * Destructor. 41 */ 42 virtual ~LowercaseTransliterator(); 43 44 /** 45 * Copy constructor. 46 */ 47 LowercaseTransliterator(const LowercaseTransliterator&); 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 private: 65 66 /** 67 * Assignment operator. 68 */ 69 LowercaseTransliterator& operator=(const LowercaseTransliterator&); 70 }; 71 72 U_NAMESPACE_END 73 74 #endif /* #if !UCONFIG_NO_TRANSLITERATION */ 75 76 #endif 77