2
**********************************************************************
3
* Copyright (C) 2001-2002, International Business Machines
4
* Corporation and others. All Rights Reserved.
5
**********************************************************************
6
* Date Name Description
7
* 07/03/01 aliu Creation.
8
**********************************************************************
13
#include "unicode/utypes.h"
14
#include "unicode/translit.h"
15
#include "unicode/normlzr.h"
20
* A transliterator that performs normalization.
23
class U_I18N_API NormalizationTransliterator : public Transliterator {
26
* The normalization mode of this transliterator.
28
UNormalizationMode fMode;
31
* Normalization options for this transliterator.
36
* Alias to skippables set. NOT OWNED.
38
UnicodeSet* skippable;
45
virtual ~NormalizationTransliterator();
50
NormalizationTransliterator(const NormalizationTransliterator&);
53
* Assignment operator.
55
NormalizationTransliterator& operator=(const NormalizationTransliterator&);
60
Transliterator* clone(void) const;
65
* Implements {@link Transliterator#handleTransliterate}.
67
void handleTransliterate(Replaceable& text, UTransPosition& offset,
68
UBool isIncremental) const;
72
* System registration hook. Public to Transliterator only.
74
static void registerIDs();
77
* Static memory cleanup function.
79
static void cleanup();
83
// Transliterator::Factory methods
84
static Transliterator* _create(const UnicodeString& ID,
88
* Constructs a transliterator. This method is private.
89
* Public users must use the factory method createInstance().
91
NormalizationTransliterator(const UnicodeString& id,
92
UNormalizationMode mode, int32_t opt);
94
static void initStatics();