PreviousUpNext

13.4.133  threadkit_posix_text_base_io

The standard libary threadkit_posix_text_base_io package implements base-level input/output functionality for multithreaded Mythryl programs on posix operating systems.

The threadkit_posix_text_base_io package implements a superset of the Threadkit_Winix_Base_Io API.

The threadkit_posix_text_base_io package source code is in src/lib/std/src/posix/threadkit-posix-text-stream-readers-and-writers.pkg.

See also: text_base_io package.

See also: threadkit_posix_binary_base_io package.

The above information is manually maintained and may contain errors.

api {    package stream_readers_and_writers : api {
                                             Mailop X = Mailop(X );
                                             Rw_Vector  = Rw_Vector;
                                             Vector  = Vector;
                                             Element  = Element;
                                             Vector_Slice  = vector_slice_of_chars::Slice;
                                             Rw_Vector_Slice  = rw_vector_slice_of_chars::Slice;
                                             File_Position  = File_Position;
                                             compare : (File_Position , File_Position) -> Order;
                                             Stream_Reader 
                                               = STREAM_READER {avail:Void -> Null_Or(Int ),  chunk_size:Int, 
                                                                close:Void -> Void, 
                                                                end_position:Null_Or((Void -> File_Position) ), 
                                                                get_position:Null_Or((Void -> File_Position) ), 
                                                                io_descriptor:Null_Or(Int ),  name:String, 
                                                                read_arr_mailop:Rw_Vector_Slice -> Mailop(Int ), 
                                                                read_rw_vector:Rw_Vector_Slice -> Int, 
                                                                read_vec_mailop:Int -> Mailop(Vector ), 
                                                                read_vector:Int -> Vector, 
                                                                set_position:Null_Or((File_Position -> Void) ), 
                                                                verify_position:Null_Or((Void -> File_Position) )};
                                             Stream_Writer 
                                               = STREAM_WRITER {chunk_size:Int,  close:Void -> Void, 
                                                                end_position:Null_Or((Void -> File_Position) ), 
                                                                get_position:Null_Or((Void -> File_Position) ), 
                                                                io_descriptor:Null_Or(Int ),  name:String, 
                                                                set_position:Null_Or((File_Position -> Void) ), 
                                                                verify_position:Null_Or((Void -> File_Position) ), 
                                                                write_arr_mailop:Rw_Vector_Slice -> Mailop(Int ), 
                                                                write_rw_vector:Rw_Vector_Slice -> Int, 
                                                                write_vec_mailop:Vector_Slice -> Mailop(Int ), 
                                                                write_vector:Vector_Slice -> Int};
                                         };;
    File_Descriptor  = File_Descriptor;
    open_for_read : String -> stream_readers_and_writers::Stream_Reader;
    open_for_write : String -> stream_readers_and_writers::Stream_Writer;
    open_for_append : String -> stream_readers_and_writers::Stream_Writer;
    make_reader : {fd:File_Descriptor,  name:String}
                  -> stream_readers_and_writers::Stream_Reader;
    make_writer : {append_mode:Bool,  chunk_size:Int, 
                   fd:File_Descriptor,  name:String}
                  -> stream_readers_and_writers::Stream_Writer;
    stdin : Void -> stream_readers_and_writers::Stream_Reader;
    stdout : Void -> stream_readers_and_writers::Stream_Writer;
    stderr : Void -> stream_readers_and_writers::Stream_Writer;
    string_reader : String -> stream_readers_and_writers::Stream_Reader;
};

Comments and suggestions to: bugs@mythryl.org

PreviousUpNext