• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2 **********************************************************************
3 *   Copyright (c) 2000-2007, International Business Machines
4 *   Corporation and others.  All Rights Reserved.
5 **********************************************************************
6 *   Date        Name        Description
7 *   01/11/2000  aliu        Creation.
8 **********************************************************************
9 */
10 #ifndef NULTRANS_H
11 #define NULTRANS_H
12 
13 #include "unicode/utypes.h"
14 
15 #if !UCONFIG_NO_TRANSLITERATION
16 
17 #include "unicode/translit.h"
18 
19 U_NAMESPACE_BEGIN
20 
21 /**
22  * A transliterator that leaves text unchanged.
23  * @author Alan Liu
24  * @internal Use transliterator factory methods instead since this class will be removed in that release.
25  */
26 class NullTransliterator : public Transliterator {
27 
28 public:
29 
30     /**
31      * Constructs a transliterator.
32      * @internal Use transliterator factory methods instead since this class will be removed in that release.
33      */
34     NullTransliterator();
35 
36     /**
37      * Destructor.
38      * @internal Use transliterator factory methods instead since this class will be removed in that release.
39      */
40     virtual ~NullTransliterator();
41 
42     /**
43      * Transliterator API.
44      * @internal Use transliterator factory methods instead since this class will be removed in that release.
45      */
46     virtual Transliterator* clone(void) const;
47 
48     /**
49      * Implements {@link Transliterator#handleTransliterate}.
50      * @internal Use transliterator factory methods instead since this class will be removed in that release.
51      */
52     virtual void handleTransliterate(Replaceable& text, UTransPosition& offset,
53                                      UBool isIncremental) const;
54 
55     /**
56      * ICU "poor man's RTTI", returns a UClassID for the actual class.
57      */
58     virtual UClassID getDynamicClassID() const;
59 
60     /**
61      * ICU "poor man's RTTI", returns a UClassID for this class.
62      */
63     U_I18N_API static UClassID U_EXPORT2 getStaticClassID();
64 
65 };
66 
67 U_NAMESPACE_END
68 
69 #endif /* #if !UCONFIG_NO_TRANSLITERATION */
70 
71 #endif
72