]> git.saurik.com Git - apple/icu.git/blobdiff - icuSources/i18n/brktrans.h
ICU-62141.0.1.tar.gz
[apple/icu.git] / icuSources / i18n / brktrans.h
index 355d63dadb301c091c709bc36d85c376efc115d4..30cf4eaed04f740beda74023c2fa429eb359e47a 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) 2008, International Business Machines
+*   Copyright (C) 2008-2015, International Business Machines
 *   Corporation and others.  All Rights Reserved.
 **********************************************************************
 *   Date        Name        Description
@@ -16,6 +18,8 @@
 
 #include "unicode/translit.h"
 
+#include "unicode/localpointer.h"
+
 
 U_NAMESPACE_BEGIN
 
@@ -30,10 +34,6 @@ class UVector32;
 class BreakTransliterator : public Transliterator {
 public:
 
-    BreakTransliterator(const UnicodeString &ID, 
-                        UnicodeFilter *adoptedFilter,
-                        BreakIterator *bi, 
-                        const UnicodeString &insertion);
     /**
      * Constructs a transliterator.
      * @param adoptedFilter    the filter for this transliterator.
@@ -58,15 +58,7 @@ public:
 
     virtual const UnicodeString &getInsertion() const;
 
-    virtual void setInsertsion(const UnicodeString &insertion);
-
-    /**
-      *  Return the break iterator used by this transliterator.
-      *  Caution, this is the live break iterator; it must not be used while
-      *     there is any possibility that this transliterator is using it.
-      */
-    virtual BreakIterator *getBreakIterator();
-
+    virtual void setInsertion(const UnicodeString &insertion);
 
     /**
      * ICU "poor man's RTTI", returns a UClassID for the actual class.
@@ -93,10 +85,9 @@ public:
                                      UBool isIncremental) const;
 
  private:
-     BreakIterator     *bi;
-     UnicodeString      fInsertion;
-     UVector32         *boundaries;
-     UnicodeString      sText;  // text from handleTransliterate().
+     LocalPointer<BreakIterator> cachedBI;
+     LocalPointer<UVector32>     cachedBoundaries;
+     UnicodeString               fInsertion;
 
      static UnicodeString replaceableAsString(Replaceable &r);