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) Define 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 out) Translate a set of codepoints, represented by an int index into a CharSequence, into another set of codepoints.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
Define 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 codepoints, represented by an int index into a CharSequence, into another set of codepoints. The number of codepoints 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 translationout
- Writer to translate the text to- Returns:
- int count of codepoints consumed
- Throws:
IOException
- if and only if the Writer produces an IOException
-