Open and read a file through a for abuse.

The abuse just ensures that the file is closed after the reading.

for f in file_open("/etc/issue") do
    var l = f.read_line
    print l
    assert not l.is_empty
end

Property definitions

for_abuse :: for_abuse $ Sys :: file_open
# Open and read a file through a `for` abuse.
# The abuse just ensures that the file is closed after the reading.
#
#     for f in file_open("/etc/issue") do
#         var l = f.read_line
#         print l
#         assert not l.is_empty
#     end # f is automatically closed here
fun file_open(path: String): ForAbuser[FileReader]
do
	return new ReadFileForAbuser(path)
end
lib/for_abuse/for_abuse.nit:154,1--165,3