Class LookupTranslator
java.lang.Object
org.apache.commons.text.translate.CharSequenceTranslator
org.apache.commons.text.translate.LookupTranslator
Translates a value using a lookup table.
- Since:
- 1.0
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final int
The length of the longest key in the lookupMap.The mapping to be used in translation.private final BitSet
The first character of each key in the lookupMap.private final int
The length of the shortest key in the lookupMap.Fields inherited from class org.apache.commons.text.translate.CharSequenceTranslator
HEX_DIGITS
-
Constructor Summary
ConstructorsConstructorDescriptionLookupTranslator
(Map<CharSequence, CharSequence> lookupMap) Constructs the lookup table to be used in translation Note that, as of Lang 3.1 (the origin of this code), the key to the lookup table is converted to a java.lang.String. -
Method Summary
Modifier and TypeMethodDescriptionint
translate
(CharSequence input, int index, Writer writer) Translate a set of code points, represented by an int index into a CharSequence, into another set of code points.Methods inherited from class org.apache.commons.text.translate.CharSequenceTranslator
hex, translate, translate, with
-
Field Details
-
lookupMap
The mapping to be used in translation. -
prefixSet
The first character of each key in the lookupMap. -
shortest
private final int shortestThe length of the shortest key in the lookupMap. -
longest
private final int longestThe length of the longest key in the lookupMap.
-
-
Constructor Details
-
LookupTranslator
Constructs the lookup table to be used in translation Note that, as of Lang 3.1 (the origin of this code), the key to the lookup table is converted to a java.lang.String. This is because we need the key to support hashCode and equals(Object), allowing it to be the key for a HashMap. See LANG-882.- Parameters:
lookupMap
- Map<CharSequence, CharSequence> table of translator mappings
-
-
Method Details
-
translate
Translate a set of code points, represented by an int index into a CharSequence, into another set of code points. The number of code points consumed must be returned, and the only IOExceptions thrown must be from interacting with the Writer so that the top level API may reliably ignore StringWriter IOExceptions.- Specified by:
translate
in classCharSequenceTranslator
- Parameters:
input
- CharSequence that is being translatedindex
- int representing the current point of translationwriter
- Writer to translate the text to- Returns:
- int count of code points consumed
- Throws:
IOException
- if and only if the Writer produces an IOException
-