]> gitweb.fperrin.net Git - Dictionary.git/blob - jars/icu4j-52_1/main/classes/translit/src/com/ibm/icu/text/RemoveTransliterator.java
Clean up imports.
[Dictionary.git] / jars / icu4j-52_1 / main / classes / translit / src / com / ibm / icu / text / RemoveTransliterator.java
1 /*
2  *******************************************************************************
3  * Copyright (C) 1996-2010, International Business Machines Corporation and    *
4  * others. All Rights Reserved.                                                *
5  *******************************************************************************
6  */
7 package com.ibm.icu.text;
8
9
10 /**
11  * A transliterator that removes characters.  This is useful in conjunction
12  * with a filter.
13  */
14 class RemoveTransliterator extends Transliterator {
15
16     /**
17      * ID for this transliterator.
18      */
19     private static String _ID = "Any-Remove";
20
21     /**
22      * System registration hook.
23      */
24     static void register() {
25         Transliterator.registerFactory(_ID, new Transliterator.Factory() {
26             public Transliterator getInstance(String ID) {
27                 return new RemoveTransliterator();
28             }
29         });
30         Transliterator.registerSpecialInverse("Remove", "Null", false);
31     }
32
33     /**
34      * Constructs a transliterator.
35      */
36     public RemoveTransliterator() {
37         super(_ID, null);
38     }
39
40     /**
41      * Implements {@link Transliterator#handleTransliterate}.
42      */
43     protected void handleTransliterate(Replaceable text,
44                                        Position index, boolean incremental) {
45         // Our caller (filteredTransliterate) has already narrowed us
46         // to an unfiltered run.  Delete it.
47         text.replace(index.start, index.limit, "");
48         int len = index.limit - index.start;
49         index.contextLimit -= len;
50         index.limit -= len;
51     }
52
53     /* (non-Javadoc)
54      * @see com.ibm.icu.text.Transliterator#addSourceTargetSet(boolean, com.ibm.icu.text.UnicodeSet, com.ibm.icu.text.UnicodeSet)
55      */
56     @Override
57     public void addSourceTargetSet(UnicodeSet inputFilter, UnicodeSet sourceSet, UnicodeSet targetSet) {
58         // intersect myFilter with the input filter
59         UnicodeSet myFilter = getFilterAsUnicodeSet(inputFilter);
60         sourceSet.addAll(myFilter);
61         // do nothing with the target
62     }
63 }