Signed-off-by: Jean Privat <jean@pryen.org>
--- /dev/null
+digraph g {
+rankdir=BT;node[shape=box];
+subgraph cluster_37053984 {
+label=".."
+ m_41649040 [label="kernel"]
+subgraph cluster_37183344 {
+label="../collection"
+ m_38874592 [label="array"]
+ m_40662960 [label="abstract_collection"]
+}
+}
+ m_38874592 -> m_40662960
+ m_40662960 -> m_41649040
+}
# NOTE: Only LINE FEED (`\n`) is considered to delimit the end of lines.
fun read_line: String
do
- assert not eof
+ if eof then return ""
var s = new FlatBuffer
append_line_to(s)
return s.to_s
super IStream
redef fun read_char
do
- assert not eof
if _buffer_pos >= _buffer.length then
fill_buffer
end
do
if _buffer.length == _buffer_pos then
if not eof then
- fill_buffer
return read(i)
end
return ""
end
end
- redef fun eof do return _buffer_pos >= _buffer.length and end_reached
+ redef fun eof
+ do
+ if _buffer_pos < _buffer.length then return false
+ if end_reached then return true
+ fill_buffer
+ return _buffer_pos >= _buffer.length and end_reached
+ end
# The buffer
private var buffer: nullable FlatBuffer = null