]> git.saurik.com Git - apple/icu.git/blobdiff - icuSources/i18n/casetrn.cpp
ICU-491.11.1.tar.gz
[apple/icu.git] / icuSources / i18n / casetrn.cpp
index 307f80e94d5a06de7bf30e8b769ef06a27db5a51..20a73e342949c67086adf7832972dc8002a568ee 100644 (file)
@@ -1,7 +1,7 @@
 /*
 *******************************************************************************
 *
-*   Copyright (C) 2001-2005, International Business Machines
+*   Copyright (C) 2001-2011, International Business Machines
 *   Corporation and others.  All Rights Reserved.
 *
 *******************************************************************************
@@ -22,6 +22,8 @@
 
 #include "unicode/uchar.h"
 #include "unicode/ustring.h"
+#include "unicode/utf.h"
+#include "unicode/utf16.h"
 #include "tolowtrn.h"
 #include "ucase.h"
 #include "cpputils.h"
@@ -30,6 +32,8 @@
 U_CFUNC UChar32 U_CALLCONV
 utrans_rep_caseContextIterator(void *context, int8_t dir)
 {
+    U_NAMESPACE_USE
+
     UCaseContext *csc=(UCaseContext *)context;
     Replaceable *rep=(Replaceable *)csc->p;
     UChar32 c;
@@ -79,19 +83,16 @@ utrans_rep_caseContextIterator(void *context, int8_t dir)
 
 U_NAMESPACE_BEGIN
 
-UOBJECT_DEFINE_RTTI_IMPLEMENTATION(CaseMapTransliterator)
+UOBJECT_DEFINE_ABSTRACT_RTTI_IMPLEMENTATION(CaseMapTransliterator)
 
 /**
  * Constructs a transliterator.
  */
 CaseMapTransliterator::CaseMapTransliterator(const UnicodeString &id, UCaseMapFull *map) : 
     Transliterator(id, 0),
-    fCsp(NULL),
+    fCsp(ucase_getSingleton()),
     fMap(map)
 {
-    UErrorCode errorCode = U_ZERO_ERROR;
-    fCsp = ucase_getSingleton(&errorCode); // expect to get NULL if failure
-
     // TODO test incremental mode with context-sensitive text (e.g. greek sigma)
     // TODO need to call setMaximumContextLength()?!
 }
@@ -114,19 +115,19 @@ CaseMapTransliterator::CaseMapTransliterator(const CaseMapTransliterator& o) :
 /**
  * Assignment operator.
  */
-CaseMapTransliterator& CaseMapTransliterator::operator=(const CaseMapTransliterator& o) {
+/*CaseMapTransliterator& CaseMapTransliterator::operator=(const CaseMapTransliterator& o) {
     Transliterator::operator=(o);
     fCsp = o.fCsp;
     fMap = o.fMap;
     return *this;
-}
+}*/
 
 /**
  * Transliterator API.
  */
-Transliterator* CaseMapTransliterator::clone(void) const {
+/*Transliterator* CaseMapTransliterator::clone(void) const {
     return new CaseMapTransliterator(*this);
-}
+}*/
 
 /**
  * Implements {@link Transliterator#handleTransliterate}.