Package org.biojava.bio.seq.io
Interface SymbolReader
-
public interface SymbolReader
Encapsulate a stream of Symbols being parsed from some input stream. This allows SymbolList creation to be fully decoupled from stream parsing.- Since:
- 1.1 [newio proposal]
- Author:
- Thomas Down
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Alphabet
getAlphabet()
Find the alphabet of all symbols which may be returned by this SymbolReader.boolean
hasMoreSymbols()
Determine if there are more symbols left to read in this stream.Symbol
readSymbol()
Return a single symbol from the stream.int
readSymbols(Symbol[] buffer, int start, int length)
Read one or more symbols from the stream.
-
-
-
Method Detail
-
getAlphabet
Alphabet getAlphabet()
Find the alphabet of all symbols which may be returned by this SymbolReader. NOTE: SymbolList implementations are expected to perform any necessary validation of returned Symbols. Client code should not need to perform any extra validation.
-
readSymbol
Symbol readSymbol() throws IOException, IllegalSymbolException
Return a single symbol from the stream.- Throws:
IOException
- if an error occured on the stream, or the end of the stream has already been reached.IllegalSymbolException
- if a parse error occured.
-
readSymbols
int readSymbols(Symbol[] buffer, int start, int length) throws IOException, IllegalSymbolException
Read one or more symbols from the stream.- Parameters:
buffer
- the destination for read symbols.start
- a start offset within the buffer.length
- the maximum number of Symbols to read.- Returns:
- the number of Symbols which were actually read.
- Throws:
IOException
- if an error occured on the stream, or the end of the stream has already been reached.IllegalSymbolException
- if a parse error occured.
-
hasMoreSymbols
boolean hasMoreSymbols()
Determine if there are more symbols left to read in this stream.
-
-