


## imperative-io.api
# Compiled by:
# src/lib/std/src/standard-core.sublib# Included by:
# src/lib/std/src/io/binary-io.apiapi Imperative_Io {
#
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;
can_read: (Input_Stream, Int) -> Null_Or( Int );
lookahead: 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 pure_io: Pure_Io; # Pure_Io is from src/lib/std/src/io/pure-io.api sharing Vector == pure_io::Vector;
sharing Element == pure_io::Element;
make_instream: pure_io::Input_Stream -> Input_Stream;
get_instream: Input_Stream -> pure_io::Input_Stream;
set_instream: (Input_Stream, pure_io::Input_Stream) -> Void;
get_output_position: Output_Stream -> pure_io::Out_Position;
set_output_position: (Output_Stream, pure_io::Out_Position) -> Void;
make_outstream: pure_io::Output_Stream -> Output_Stream;
get_outstream: Output_Stream -> pure_io::Output_Stream;
set_outstream: (Output_Stream, pure_io::Output_Stream) -> Void;
};
## COPYRIGHT (c) 1995 AT&T Bell Laboratories.
## Subsequent changes by Jeff Prothero Copyright (c) 2010-2011,
## released under Gnu Public Licence version 3.


