]> git.saurik.com Git - apple/icu.git/blame - icuSources/i18n/nultrans.h
ICU-6.2.21.tar.gz
[apple/icu.git] / icuSources / i18n / nultrans.h
CommitLineData
b75a7d8f
A
1/*
2**********************************************************************
374ca955 3* Copyright (c) 2000-2004, International Business Machines
b75a7d8f
A
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
19U_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 */
26class U_I18N_API NullTransliterator : public Transliterator {
27
28public:
29
30 /**
31 * ID for this transliterator.
32 * @internal Use transliterator factory methods instead since this class will be removed in that release.
33 */
34 static const UChar ID[]; // public for Transliterator
35
36 /**
37 * ID for this transliterator.
38 * @internal Use transliterator factory methods instead since this class will be removed in that release.
39 */
40 static const UChar SHORT_ID[]; // public for Transliterator
41
42 /**
43 * Constructs a transliterator.
44 * @internal Use transliterator factory methods instead since this class will be removed in that release.
45 */
46 NullTransliterator();
47
48 /**
49 * Destructor.
50 * @internal Use transliterator factory methods instead since this class will be removed in that release.
51 */
52 virtual ~NullTransliterator();
53
54 /**
55 * Transliterator API.
56 * @internal Use transliterator factory methods instead since this class will be removed in that release.
57 */
374ca955 58 virtual Transliterator* clone(void) const;
b75a7d8f
A
59
60 /**
61 * Implements {@link Transliterator#handleTransliterate}.
62 * @internal Use transliterator factory methods instead since this class will be removed in that release.
63 */
64 virtual void handleTransliterate(Replaceable& text, UTransPosition& offset,
65 UBool isIncremental) const;
66
67 /**
68 * ICU "poor man's RTTI", returns a UClassID for the actual class.
69 *
70 * @draft ICU 2.2
71 */
374ca955 72 virtual UClassID getDynamicClassID() const;
b75a7d8f
A
73
74 /**
75 * ICU "poor man's RTTI", returns a UClassID for this class.
76 *
77 * @draft ICU 2.2
78 */
374ca955 79 static UClassID U_EXPORT2 getStaticClassID();
b75a7d8f 80
b75a7d8f
A
81};
82
b75a7d8f
A
83U_NAMESPACE_END
84
85#endif /* #if !UCONFIG_NO_TRANSLITERATION */
86
87#endif