lib/standard/file: Auto-flush write streams
authorLucas Bajolet <r4pass@hotmail.com>
Thu, 4 Dec 2014 16:52:31 +0000 (11:52 -0500)
committerLucas Bajolet <r4pass@hotmail.com>
Wed, 10 Dec 2014 19:24:08 +0000 (14:24 -0500)
Signed-off-by: Lucas Bajolet <r4pass@hotmail.com>

lib/standard/file.nit
tests/sav/test_ffi_java_callbacks.res
tests/sav/test_ffi_java_generics.res
tests/sav/test_ffi_java_string.res
tests/sav/test_ffi_java_use_module.res
tests/sav/test_jvm.res

index 90d0c2d..0a0ed51 100644 (file)
@@ -132,6 +132,7 @@ class OFStream
                else
                        for i in s.substrings do write_native(i.to_cstring, i.length)
                end
+               _file.flush
        end
 
        redef fun close
@@ -682,6 +683,8 @@ private extern class NativeFile `{ FILE* `}
        fun io_close: Int is extern "file_NativeFile_NativeFile_io_close_0"
        fun file_stat: FileStat is extern "file_NativeFile_NativeFile_file_stat_0"
        fun fileno: Int `{ return fileno(recv); `}
+       # Flushes the buffer, forcing the write operation
+       fun flush: Int is extern "fflush"
 
        new io_open_read(path: NativeString) is extern "file_NativeFileCapable_NativeFileCapable_io_open_read_1"
        new io_open_write(path: NativeString) is extern "file_NativeFileCapable_NativeFileCapable_io_open_write_1"
index 514b4d6..6803f77 100644 (file)
@@ -4,9 +4,9 @@ c
 d
 e
 f
-e
-f
 remove: a
 remove: b
 remove: c
 remove: d
+e
+f
index e11e7e7..fb6d6df 100644 (file)
@@ -1,4 +1,4 @@
 Created in Nit
-Also created in Nit
 Created in Java
+Also created in Nit
 Also created in Java
index 2972528..9fb5305 100644 (file)
@@ -1,14 +1,14 @@
+Compilation des classes Java ...
+Initialisation de la JVM ...
+---------------------Test 1----------------------
 From java, pushing premier
 From java, pushing deuxi?me
 From java, pushing troisi?me
 From java, popping premier
-From java, popping deuxi?me
-From java, popping troisi?me
-Compilation des classes Java ...
-Initialisation de la JVM ...
----------------------Test 1----------------------
 premier
+From java, popping deuxi?me
 deuxième
+From java, popping troisi?me
 troisième
 --------------------Test 2---------------------
 true