Package net.loomchild.segment.srx.legacy
Class ReaderCharSequence
- java.lang.Object
-
- net.loomchild.segment.srx.legacy.ReaderCharSequence
-
- All Implemented Interfaces:
CharSequence
public class ReaderCharSequence extends Object implements CharSequence
Adapter of reader class to CharSequence interface. Due to behavior differences CharSequence is not implemented perfectly.- Author:
- loomchild
-
-
Field Summary
Fields Modifier and Type Field Description static int
DEFAULT_BUFFER_LENGTH
static int
DEFAULT_LOOKAHEAD
static int
INFINITE_LENGTH
Value to be used as length when it is unknown.
-
Constructor Summary
Constructors Constructor Description ReaderCharSequence(Reader reader)
ReaderCharSequence(Reader reader, int bufferLength)
ReaderCharSequence(Reader reader, int bufferLength, int length)
ReaderCharSequence(Reader reader, int bufferLength, int length, int lookahead)
Create.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description char
charAt(int index)
int
length()
CharSequence
subSequence(int start, int end)
The length of returned subsequence can be smaller than (end - start) when the end of stream is reached.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface java.lang.CharSequence
chars, codePoints, toString
-
-
-
-
Field Detail
-
DEFAULT_BUFFER_LENGTH
public static final int DEFAULT_BUFFER_LENGTH
- See Also:
- Constant Field Values
-
DEFAULT_LOOKAHEAD
public static final int DEFAULT_LOOKAHEAD
- See Also:
- Constant Field Values
-
INFINITE_LENGTH
public static final int INFINITE_LENGTH
Value to be used as length when it is unknown. It must be less thanInteger.MAX_VALUE
because some code may add something to length.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
ReaderCharSequence
public ReaderCharSequence(Reader reader, int bufferLength, int length, int lookahead)
Create.- Parameters:
reader
- reader from which char sequence will be readbufferLength
- size of the character bufferlength
- length of the input; when it cannot be determined it can be set toINFINITE_LENGTH
(max value); cannot be set toInteger.MAX_VALUE
because it may cause overflow.lookahead
- number of characters to read after current position
-
ReaderCharSequence
public ReaderCharSequence(Reader reader, int bufferLength, int length)
-
ReaderCharSequence
public ReaderCharSequence(Reader reader, int bufferLength)
-
ReaderCharSequence
public ReaderCharSequence(Reader reader)
-
-
Method Detail
-
length
public int length()
- Specified by:
length
in interfaceCharSequence
-
charAt
public char charAt(int index)
- Specified by:
charAt
in interfaceCharSequence
-
subSequence
public CharSequence subSequence(int start, int end)
The length of returned subsequence can be smaller than (end - start) when the end of stream is reached.- Specified by:
subSequence
in interfaceCharSequence
-
-