Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(3)

Unified Diff: icu46/source/i18n/brktrans.h

Issue 5516007: Check in the pristine copy of ICU 4.6... (Closed) Base URL: svn://chrome-svn/chrome/trunk/deps/third_party/
Patch Set: Created 10 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « icu46/source/i18n/bocsu.c ('k') | icu46/source/i18n/brktrans.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: icu46/source/i18n/brktrans.h
===================================================================
--- icu46/source/i18n/brktrans.h (revision 0)
+++ icu46/source/i18n/brktrans.h (revision 0)
@@ -0,0 +1,113 @@
+/*
+**********************************************************************
+* Copyright (C) 2008-2009, International Business Machines
+* Corporation and others. All Rights Reserved.
+**********************************************************************
+* Date Name Description
+* 05/11/2008 Andy Heninger Ported from Java
+**********************************************************************
+*/
+#ifndef BRKTRANS_H
+#define BRKTRANS_H
+
+#include "unicode/utypes.h"
+
+#if !UCONFIG_NO_TRANSLITERATION && !UCONFIG_NO_BREAK_ITERATION
+
+#include "unicode/translit.h"
+
+
+U_NAMESPACE_BEGIN
+
+class UVector32;
+
+/**
+ * A transliterator that pInserts the specified characters at word breaks.
+ * To restrict it to particular characters, use a filter.
+ * TODO: this is an internal class, and only temporary.
+ * Remove it once we have \b notation in Transliterator.
+ */
+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.
+ */
+ BreakTransliterator(UnicodeFilter* adoptedFilter = 0);
+
+ /**
+ * Destructor.
+ */
+ virtual ~BreakTransliterator();
+
+ /**
+ * Copy constructor.
+ */
+ BreakTransliterator(const BreakTransliterator&);
+
+ /**
+ * Transliterator API.
+ * @return A copy of the object.
+ */
+ virtual Transliterator* clone(void) const;
+
+ virtual const UnicodeString &getInsertion() const;
+
+ virtual void setInsertion(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();
+
+
+ /**
+ * ICU "poor man's RTTI", returns a UClassID for the actual class.
+ */
+ virtual UClassID getDynamicClassID() const;
+
+ /**
+ * ICU "poor man's RTTI", returns a UClassID for this class.
+ */
+ U_I18N_API static UClassID U_EXPORT2 getStaticClassID();
+
+ protected:
+
+ /**
+ * Implements {@link Transliterator#handleTransliterate}.
+ * @param text the buffer holding transliterated and
+ * untransliterated text
+ * @param offset the start and limit of the text, the position
+ * of the cursor, and the start and limit of transliteration.
+ * @param incremental if true, assume more text may be coming after
+ * pos.contextLimit. Otherwise, assume the text is complete.
+ */
+ virtual void handleTransliterate(Replaceable& text, UTransPosition& offset,
+ UBool isIncremental) const;
+
+ private:
+ BreakIterator *bi;
+ UnicodeString fInsertion;
+ UVector32 *boundaries;
+ UnicodeString sText; // text from handleTransliterate().
+
+ static UnicodeString replaceableAsString(Replaceable &r);
+
+ /**
+ * Assignment operator.
+ */
+ BreakTransliterator& operator=(const BreakTransliterator&);
+};
+
+U_NAMESPACE_END
+
+#endif /* #if !UCONFIG_NO_TRANSLITERATION */
+
+#endif
Property changes on: icu46/source/i18n/brktrans.h
___________________________________________________________________
Added: svn:eol-style
+ LF
« no previous file with comments | « icu46/source/i18n/bocsu.c ('k') | icu46/source/i18n/brktrans.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698