com.ibm.icu.text

Class Transliterator.Position

Enclosing Class:
Transliterator

public static class Transliterator.Position
extends Object

Position structure for incremental transliteration. This data structure defines two substrings of the text being transliterated. The first region, [contextStart, contextLimit), defines what characters the transliterator will read as context. The second region, [start, limit), defines what characters will actually be transliterated. The second region should be a subset of the first.

After a transliteration operation, some of the indices in this structure will be modified. See the field descriptions for details.

contextStart <= start <= limit <= contextLimit

Note: All index values in this structure must be at code point boundaries. That is, none of them may occur between two code units of a surrogate pair. If any index does split a surrogate pair, results are unspecified.

Field Summary

int
contextLimit
Ending index, exclusive, of the context to be considered for a transliteration operation.
int
contextStart
Beginning index, inclusive, of the context to be considered for a transliteration operation.
int
limit
Ending index, exclusive, of the text to be transliteratd.
int
start
Beginning index, inclusive, of the text to be transliteratd.

Constructor Summary

Position()
Constructs a Position object with start, limit, contextStart, and contextLimit all equal to zero.
Position(Transliterator.Position pos)
Constructs a Position object that is a copy of another.
Position(int contextStart, int contextLimit, int start)
Constructs a Position object with the given start, contextStart, and contextLimit.
Position(int contextStart, int contextLimit, int start, int limit)
Constructs a Position object with the given start, limit, contextStart, and contextLimit.

Method Summary

boolean
equals(Object obj)
Returns true if this Position is equal to the given object.
void
set(Transliterator.Position pos)
Copies the indices of this position from another.
String
toString()
Returns a string representation of this Position.
void
validate(int length)
Check all bounds.

Field Details

contextLimit

public int contextLimit
Ending index, exclusive, of the context to be considered for a transliteration operation. The transliterator will ignore anything at or after this index. INPUT/OUTPUT parameter: This parameter is updated to reflect changes in the length of the text, but points to the same logical position in the text.

contextStart

public int contextStart
Beginning index, inclusive, of the context to be considered for a transliteration operation. The transliterator will ignore anything before this index. INPUT/OUTPUT parameter: This parameter is updated by a transliteration operation to reflect the maximum amount of antecontext needed by a transliterator.

limit

public int limit
Ending index, exclusive, of the text to be transliteratd. INPUT/OUTPUT parameter: This parameter is updated to reflect changes in the length of the text, but points to the same logical position in the text.

start

public int start
Beginning index, inclusive, of the text to be transliteratd. INPUT/OUTPUT parameter: This parameter is advanced past characters that have already been transliterated by a transliteration operation.

Constructor Details

Position

public Position()
Constructs a Position object with start, limit, contextStart, and contextLimit all equal to zero.

Position

public Position(Transliterator.Position pos)
Constructs a Position object that is a copy of another.

Position

public Position(int contextStart,
                int contextLimit,
                int start)
Constructs a Position object with the given start, contextStart, and contextLimit. The limit is set to the contextLimit.

Position

public Position(int contextStart,
                int contextLimit,
                int start,
                int limit)
Constructs a Position object with the given start, limit, contextStart, and contextLimit.

Method Details

equals

public boolean equals(Object obj)
Returns true if this Position is equal to the given object.

set

public void set(Transliterator.Position pos)
Copies the indices of this position from another.

toString

public String toString()
Returns a string representation of this Position.

validate

public final void validate(int length)
Check all bounds. If they are invalid, throw an exception.
Parameters:
length - the length of the string this object applies to

Copyright (c) 2006 IBM Corporation and others.