]> git.saurik.com Git - apple/icu.git/blobdiff - icuSources/i18n/casetrn.h
ICU-62141.0.1.tar.gz
[apple/icu.git] / icuSources / i18n / casetrn.h
index cf3e0f9598b8464c590a0ccb46a58fae4024201d..744406e95f968b96da3c52820a1fdb0c9a58eaf2 100644 (file)
@@ -1,12 +1,14 @@
+// © 2016 and later: Unicode, Inc. and others.
+// License & terms of use: http://www.unicode.org/copyright.html
 /*
 *******************************************************************************
 *
-*   Copyright (C) 2001-2004, International Business Machines
+*   Copyright (C) 2001-2008, International Business Machines
 *   Corporation and others.  All Rights Reserved.
 *
 *******************************************************************************
 *   file name:  casetrn.h
-*   encoding:   US-ASCII
+*   encoding:   UTF-8
 *   tab size:   8 (not used)
 *   indentation:4
 *
 #if !UCONFIG_NO_TRANSLITERATION
 
 #include "unicode/translit.h"
-#include "unicode/locid.h"
 #include "ucase.h"
 
-U_CDECL_BEGIN
-
-typedef int32_t U_CALLCONV
-UCaseMapFull(const UCaseProps *csp, UChar32 c,
-             UCaseContextIterator *iter, void *context,
-             const UChar **pString,
-             const char *locale, int32_t *locCache);
-
-U_CDECL_END
-
 U_NAMESPACE_BEGIN
 
 /**
  * A transliterator that performs locale-sensitive
  * case mapping.
  */
-class U_I18N_API CaseMapTransliterator : public Transliterator {
+class CaseMapTransliterator : public Transliterator {
 public:
     /**
      * Constructs a transliterator.
@@ -51,7 +42,7 @@ public:
      * @param id  the transliterator ID.
      * @param map the full case mapping function (see ucase.h)
      */
-    CaseMapTransliterator(const Locale &loc, const UnicodeString &id, UCaseMapFull *map);
+    CaseMapTransliterator(const UnicodeString &id, UCaseMapFull *map);
 
     /**
      * Destructor.
@@ -63,26 +54,21 @@ public:
      */
     CaseMapTransliterator(const CaseMapTransliterator&);
 
-    /**
-     * Assignment operator.
-     */
-    CaseMapTransliterator& operator=(const CaseMapTransliterator&);
-
     /**
      * Transliterator API.
      * @return a copy of the object.
      */
-    virtual Transliterator* clone(void) const;
+    virtual Transliterator* clone(void) const = 0;
 
     /**
      * ICU "poor man's RTTI", returns a UClassID for the actual class.
      */
-    virtual UClassID getDynamicClassID() const;
+    //virtual UClassID getDynamicClassID() const;
 
     /**
      * ICU "poor man's RTTI", returns a UClassID for this class.
      */
-    static UClassID U_EXPORT2 getStaticClassID();
+    U_I18N_API static UClassID U_EXPORT2 getStaticClassID();
 
 protected:
     /**
@@ -98,10 +84,14 @@ protected:
                                      UTransPosition& offsets, 
                                      UBool isIncremental) const;
 
-    Locale fLoc;
-    const char *fLocName;
-    UCaseProps *fCsp;
     UCaseMapFull *fMap;
+
+private:
+    /**
+     * Assignment operator.
+     */
+    CaseMapTransliterator& operator=(const CaseMapTransliterator&);
+
 };
 
 U_NAMESPACE_END