PreviousUpNext

14.4.145  Winix_Extended_File_Io_Driver_For_Os__Premicrothread

The standard library Winix_Extended_Io_Driver_For_Os api defines the low-level api exported by the Mythryl platform-specific file I/O driver for a particular operating system.

The Winix_Extended_Io_Driver_For_Os api is implemented by the winix_data_file_for_os_g generic from src/lib/std/src/io/winix-data-file-for-os-g–premicrothread.pkg and the winix_text_file_for_os_g generic from src/lib/std/src/io/winix-text-file-for-os-g–premicrothread.pkg.

See also: Winix_Text_File_For_Os api.

See also: Winix_Data_File_For_Os api.

See also: winix_text_file_for_posix package.

See also: winix_data_file_for_posix package.

The above information is manually maintained and may contain errors.

api {   package drv
          : api {
                Element;
                Vector;
                Vector_Slice;
                Rw_Vector;
                Rw_Vector_Slice;
                eqtype File_Position;
                compare : (File_Position , File_Position) -> Order;
                    Filereader
                    = FILEREADER        {avail:Void -> Null_Or(Int ), best_io_quantum:Int, blockx:Null_Or((Void -> Void) ),
                                        can_readx:Null_Or((Void -> Bool) ), close:Void -> Void,
                                        end_file_position:Null_Or((Void -> File_Position) ), filename:String,
                                        get_file_position:Null_Or((Void -> File_Position) ), io_descriptor:Null_Or(Int ),
                                        read_vector:Int -> Vector, set_file_position:Null_Or((File_Position -> Void) ),
                                        verify_file_position:Null_Or((Void -> File_Position) )};
                    Filewriter
                    = FILEWRITER
                            {best_io_quantum:Int, blockx:Null_Or((Void -> Void) ), can_output:Null_Or((Void -> Bool) ),
                            close:Void -> Void, end_file_position:Null_Or((Void -> File_Position) ), filename:String,
                            get_file_position:Null_Or((Void -> File_Position) ), io_descriptor:Null_Or(Int ),
                            set_file_position:Null_Or((File_Position -> Void) ),
                            verify_file_position:Null_Or((Void -> File_Position) ),
                            write_rw_vector:Null_Or((Rw_Vector_Slice -> Int) ), write_vector:Null_Or((Vector_Slice -> Int) )};
                open_vector : Vector -> Filereader;
                null_reader : Void -> Filereader;
                null_writer : Void -> Filewriter;
                augment_reader : Filereader -> Filereader;
                augment_writer : Filewriter -> Filewriter;};;
    File_Descriptor;
    open_for_read : String -> drv::Filereader;
    open_for_write : String -> drv::Filewriter;
    open_for_append : String -> drv::Filewriter;
        make_filereader :
        {file_descriptor:File_Descriptor, filename:String, ok_to_block:Bool} -> drv::Filereader;
        make_filewriter :
                {append_mode:Bool, best_io_quantum:Int, file_descriptor:File_Descriptor, filename:String,
                ok_to_block:Bool}
            ->
            drv::Filewriter;};


Comments and suggestions to: bugs@mythryl.org

PreviousUpNext