# The FILE *.
private var file: nullable NativeFile = null
+ # The status of a file. see POSIX stat(2).
fun file_stat: FileStat do return _file.file_stat
# File descriptor of this file
###############################################################################
+# Standard input stream.
class Stdin
super IFStream
redef fun poll_in: Bool is extern "file_stdin_poll_in"
end
+# Standard output stream.
class Stdout
super OFStream
init do
end
end
+# Standard error stream.
class Stderr
super OFStream
init do
end
# returns files contained within the directory represented by self
- fun files : Set[ String ] is extern import HashSet[String], HashSet[String].add, NativeString.to_s, String.to_cstring, HashSet[String].as(Set[String]) `{
+ fun files: Array[String] is extern import Array[String], Array[String].add, NativeString.to_s, String.to_cstring `{
char *dir_path;
DIR *dir;
}
else
{
- HashSet_of_String results;
+ Array_of_String results;
String file_name;
struct dirent *de;
- results = new_HashSet_of_String();
+ results = new_Array_of_String();
while ( ( de = readdir( dir ) ) != NULL )
if ( strcmp( de->d_name, ".." ) != 0 &&
strcmp( de->d_name, "." ) != 0 )
{
file_name = NativeString_to_s( strdup( de->d_name ) );
- HashSet_of_String_add( results, file_name );
+ Array_of_String_add( results, file_name );
}
closedir( dir );
- return HashSet_of_String_as_Set_of_String( results );
+ return results;
}
`}
end
redef class Sys
+ init do
+ if stdout isa FStream then stdout.as(FStream).set_buffering_mode(256, buffer_mode_line)
+ end
+
# Standard input
var stdin: PollableIStream = new Stdin is protected writable