]> git.saurik.com Git - apple/icu.git/blobdiff - icuSources/i18n/funcrepl.h
ICU-62141.0.1.tar.gz
[apple/icu.git] / icuSources / i18n / funcrepl.h
index cfb6a08dacb7a64ee34cb43b6cee2184b751b92f..a835d5be7c2173ac9a336f6e1f602781d1bbfda7 100644 (file)
@@ -1,6 +1,8 @@
+// © 2016 and later: Unicode, Inc. and others.
+// License & terms of use: http://www.unicode.org/copyright.html
 /*
 **********************************************************************
-*   Copyright (c) 2002, International Business Machines Corporation
+*   Copyright (c) 2002-2011, International Business Machines Corporation
 *   and others.  All Rights Reserved.
 **********************************************************************
 *   Date        Name        Description
@@ -8,6 +10,9 @@
 **********************************************************************
 */
 
+#ifndef FUNCREPL_H
+#define FUNCREPL_H
+
 #include "unicode/utypes.h"
 
 #if !UCONFIG_NO_TRANSLITERATION
@@ -25,12 +30,9 @@ class Transliterator;
  * UnicodeReplacer object.  That is, this replacer wraps another
  * replacer with a transliterator.
  *
- * Added U_I18N_API to make the definition of a global operator delete work.
- * See Jitterbug 2581. markus 2002dec17
- *
  * @author Alan Liu
  */
-class U_I18N_API FunctionReplacer : public UnicodeFunctor, public UnicodeReplacer {
+class FunctionReplacer : public UnicodeFunctor, public UnicodeReplacer {
 
  private:
 
@@ -45,12 +47,6 @@ class U_I18N_API FunctionReplacer : public UnicodeFunctor, public UnicodeReplace
      */
     UnicodeFunctor* replacer;
 
-    /**
-     * The address of this static class variable serves as this class's ID
-     * for ICU "poor man's RTTI".
-     */
-    static const char fgClassID;
-
  public:
 
     /**
@@ -108,21 +104,18 @@ class U_I18N_API FunctionReplacer : public UnicodeFunctor, public UnicodeReplace
 
     /**
      * ICU "poor man's RTTI", returns a UClassID for the actual class.
-     *
-     * @draft ICU 2.2
      */
-    virtual inline UClassID getDynamicClassID() const { return getStaticClassID(); }
+    virtual UClassID getDynamicClassID() const;
 
     /**
      * ICU "poor man's RTTI", returns a UClassID for this class.
-     *
-     * @draft ICU 2.2
      */
-    static inline UClassID getStaticClassID() { return (UClassID)&fgClassID; }
+    static UClassID U_EXPORT2 getStaticClassID();
 };
 
 U_NAMESPACE_END
 
 #endif /* #if !UCONFIG_NO_TRANSLITERATION */
+#endif
 
 //eof