


The standard library Threadkit_Base_Io api defines part of the I/O infrastructure for multithreaded Mythryl programs.
The Threadkit_Base_Io api is implemented by (for example) the threadkit_binary_base_io package.
The Threadkit_Base_Io api source code is in src/lib/std/src/io/threadkit-base-io.api.
The above information is manually maintained and may contain errors.
api { Mailop X = Mailop(X );
Rw_Vector ;
Vector ;
Element ;
Vector_Slice ;
Rw_Vector_Slice ;
eqtype File_Position ;
compare : (File_Position , File_Position) -> Order;
Reader
= 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) )};
Writer = 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};
};


