PreviousUpNext

14.4.103  Threadkit_Winix_Data_File_For_Os

The standard library Threadkit_Winix_Data_File_For_Os api defines access to basic low-level file binary read and write functionality.

The Threadkit_Winix_Data_File_For_Os api is implemented by the threadkit_winix_data_file_for_os_g generic package.

The Threadkit_Winix_Data_File_For_Os api is implemented by the threadkit_winix_data_file_for_posix package.

The Threadkit_Winix_Data_File_For_Os api source code is in src/lib/std/src/io/threadkit-winix-data-file-for-os.api.

The above information is manually maintained and may contain errors.

api {
    Vector ;
    Element ;
    Input_Stream ;
    Output_Stream ;
    read : Input_Stream -> Vector;
    read_one : Input_Stream -> Null_Or(Element );
    read_n : (Input_Stream , Int) -> Vector;
    read_all : Input_Stream -> Vector;
    max_readable_without_blocking : (Input_Stream , Int) -> Null_Or(Int );
    peek : Input_Stream -> Null_Or(Element );
    close_input : Input_Stream -> Void;
    end_of_stream : Input_Stream -> Bool;
    write : (Output_Stream , Vector) -> Void;
    write_one : (Output_Stream , Element) -> Void;
    flush : Output_Stream -> Void;
    close_output : Output_Stream -> Void;
    package pur : api {
                      Vector  = Vector;
                      Element  = one_byte_unt::Unt;
                      Filereader  = Filereader;
                      Filewriter  = Filewriter;
                      Input_Stream ;
                      Output_Stream ;
                      File_Position  = File_Position;
                      Out_Position ;
                      make_instream : (Filereader , Vector) -> Input_Stream;
                      read : Input_Stream -> (Vector , Input_Stream);
                      read_one : Input_Stream -> Null_Or(((Element , Input_Stream)) );
                      read_n : (Input_Stream , Int) -> (Vector , Input_Stream);
                      read_all : Input_Stream -> (Vector , Input_Stream);
                      max_readable_without_blocking : (Input_Stream , Int) -> Null_Or(Int );
                      close_input : Input_Stream -> Void;
                      end_of_stream : Input_Stream -> Bool;
                      get_reader : Input_Stream -> (Filereader , Vector);
                      file_position_in : Input_Stream -> File_Position;
                      make_outstream : (Filewriter , io_exceptions::Buffering_Mode)
                                       -> Output_Stream;
                      write : (Output_Stream , Vector) -> Void;
                      write_one : (Output_Stream , Element) -> Void;
                      flush : Output_Stream -> Void;
                      close_output : Output_Stream -> Void;
                      set_buffering_mode : (Output_Stream , io_exceptions::Buffering_Mode) -> Void;
                      get_buffering_mode : Output_Stream -> io_exceptions::Buffering_Mode;
                      get_writer : Output_Stream
                                   -> (Filewriter , io_exceptions::Buffering_Mode);
                      file_pos_out : Out_Position -> File_Position;
                      get_output_position : Output_Stream -> Out_Position;
                      set_output_position : Out_Position -> Void;
                      input1evt : Input_Stream
                                  -> Mailop(Null_Or(((Element , Input_Stream)) ) );
                      input_nevt : (Input_Stream , Int)
                                   -> Mailop(((Vector , Input_Stream)) );
                      input_mailop : Input_Stream -> Mailop(((Vector , Input_Stream)) );
                      input_all_mailop : Input_Stream -> Mailop(((Vector , Input_Stream)) );
                  };;
    make_instream : pur::Input_Stream -> Input_Stream;
    get_instream : Input_Stream -> pur::Input_Stream;
    set_instream : (Input_Stream , pur::Input_Stream) -> Void;
    get_output_position : Output_Stream -> pur::Out_Position;
    set_output_position : (Output_Stream , pur::Out_Position) -> Void;
    make_outstream : pur::Output_Stream -> Output_Stream;
    get_outstream : Output_Stream -> pur::Output_Stream;
    set_outstream : (Output_Stream , pur::Output_Stream) -> Void;
    input1evt : Input_Stream -> Mailop(Null_Or(Element ) );
    input_nevt : (Input_Stream , Int) -> Mailop(Vector );
    input_mailop : Input_Stream -> Mailop(Vector );
    input_all_mailop : Input_Stream -> Mailop(Vector );
    open_for_read : String -> Input_Stream;
    open_for_write : String -> Output_Stream;
    open_for_append : String -> Output_Stream;
sharing pur::Element = Element
sharing pur::Vector = Vector
};


Comments and suggestions to: bugs@mythryl.org

PreviousUpNext