2 **********************************************************************
3 * Copyright (c) 2001, International Business Machines
4 * Corporation and others. All Rights Reserved.
5 **********************************************************************
6 * Date Name Description
7 * 04/02/2001 aliu Creation.
8 **********************************************************************
13 #include "unicode/utypes.h"
15 #if !UCONFIG_NO_TRANSLITERATION
17 #include "unicode/translit.h"
22 * A transliterator that removes text.
25 class U_I18N_API RemoveTransliterator
: public Transliterator
{
30 * Constructs a transliterator.
32 RemoveTransliterator();
37 virtual ~RemoveTransliterator();
40 * System registration hook.
42 static void registerIDs();
46 * @return A copy of the object.
48 Transliterator
* clone(void) const;
51 * Implements {@link Transliterator#handleTransliterate}.
52 * @param text the buffer holding transliterated and
53 * untransliterated text
54 * @param offset the start and limit of the text, the position
55 * of the cursor, and the start and limit of transliteration.
56 * @param incremental if true, assume more text may be coming after
57 * pos.contextLimit. Otherwise, assume the text is complete.
59 virtual void handleTransliterate(Replaceable
& text
, UTransPosition
& offset
,
60 UBool isIncremental
) const;
63 * ICU "poor man's RTTI", returns a UClassID for the actual class.
67 virtual inline UClassID
getDynamicClassID() const { return getStaticClassID(); }
70 * ICU "poor man's RTTI", returns a UClassID for this class.
74 static inline UClassID
getStaticClassID() { return (UClassID
)&fgClassID
; }
81 static Transliterator
* _create(const UnicodeString
& ID
, Token context
);
84 * The address of this static class variable serves as this class's ID
85 * for ICU "poor man's RTTI".
87 static const char fgClassID
;
92 #endif /* #if !UCONFIG_NO_TRANSLITERATION */