filter_stream $ StreamCat :: SELF
Type of this instance, automatically specialized in every classfilter_stream $ StreamCat :: read_char
Reads a character. Returnsnull
on EOF or timeout
core :: Reader :: append_line_to
Read a string until the end of the line and append it tos
.
binary :: BinaryStream :: big_endian
Use the big-endian convention? otherwise use little-endian.binary :: BinaryStream :: big_endian=
Use the big-endian convention? otherwise use little-endian.core :: Object :: class_factory
Implementation used byget_class
to create the specific class.
core :: Object :: defaultinit
core :: Stream :: defaultinit
binary :: BinaryStream :: defaultinit
core :: Reader :: defaultinit
core :: Reader :: deserialize_msgpack
Deserialize full Nitnullable Object
from MessagePack formated data
core :: Object :: is_same_instance
Return true ifself
and other
are the same instance (i.e. same identity).
core :: Object :: is_same_serialized
Isself
the same as other
in a serialization context?
core :: Object :: is_same_type
Return true ifself
and other
have the same dynamic type.
core :: Stream :: last_error=
Error produced by the file streamcore :: Stream :: lookahead=
Lookahead buffer for codecscore :: Stream :: lookahead_capacity
Capacity of the lookaheadcore :: Stream :: lookahead_capacity=
Capacity of the lookaheadcore :: Stream :: lookahead_length
Current occupation of the lookaheadcore :: Stream :: lookahead_length=
Current occupation of the lookaheadcore :: Object :: output_class_name
Display class name on stdout (debug only).core :: Reader :: raw_read_byte
Read a byte directly from the underlying stream, withoutcore :: Reader :: raw_read_bytes
Read at mostmax
bytes from the underlying stream into buf
,
core :: Reader :: read_block
Read the length as a 64 bits integer, then the content of the blockcore :: Reader :: read_bytes_to_cstring
Reads up tomax
bytes from source and stores them in bytes
core :: Reader :: read_double
Read a floating point on 64 bits and return it as aFloat
core :: Reader :: read_float
Read a floating point on 32 bits and return it as aFloat
core :: Reader :: read_int64
Read a signed integer on 64 bits and return is anInt
core :: Reader :: read_msgpack
Read the next MessagePack object and return it as a simple Nit objectcore :: Reader :: read_nonwhitespace
Skip whitespace characters (if any) then return the following non-whitespace character.filter_stream :: FilterReader :: stream=
Filter readed elementscore :: Stream :: write_buffer
Buffer for writing data to a streamcore :: Stream :: write_buffer=
Buffer for writing data to a stream
class StreamCat
super FilterReader
private var streams: Iterator[Reader]
redef fun eof: Bool
do
if stream == null then
return true
else if stream.eof then
stream.close
stream = null
return eof
else
return false
end
end
redef fun stream: nullable Reader
do
var res = super
if res == null and _streams.is_ok then
res = _streams.item
stream = res
assert stream != null
_streams.next
end
return res
end
redef fun read_char
do
assert not eof
return stream.read_char
end
redef fun close
do
while stream != null do
stream.close
stream = null
end
end
init with_streams(streams: Array[Reader])
do
_streams = streams.iterator
end
init(streams: Reader ...) is old_style_init do
_streams = streams.iterator
end
end
lib/filter_stream/filter_stream.nit:39,1--90,3