(* Subclassable file-like streams module *) (* by Travis Bemann *) (* *) (* This program is free software; you can redistribute it and/or *) (* modify it under the terms of the GNU Lesser General Public *) (* License as published by the Free Software Foundation; either *) (* version 2 of the License, or (at your option) any later version. *) (* *) (* This program is distributed in the hope that it will be useful, *) (* but WITHOUT ANY WARRANTY; without even the implied warranty of *) (* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *) (* GNU Lesser General Public License for more details. *) class virtual fstream_in : object method virtual length : int method virtual input_char : char method virtual input_line : string method virtual input : int -> string method virtual really_input : int -> string method virtual input_buf : string -> int -> int -> int method virtual really_input_buf : string -> int -> int -> unit method virtual seek : int -> unit method virtual pos : int end class fstream_in_channel : in_channel -> object method length : int method input_char : char method input_line : string method input : int -> string method really_input : int -> string method input_buf : string -> int -> int -> int method really_input_buf : string -> int -> int -> unit method seek : int -> unit method pos : int end class fstream_in_string : string -> object val mutable loc : int method length : int method input_char : char method input_line : string method input : int -> string method really_input : int -> string method input_buf : string -> int -> int -> int method really_input_buf : string -> int -> int -> unit method seek : int -> unit method pos : int end class virtual fstream_out : object method virtual output_char : char -> unit method virtual output_string : string -> unit method virtual output_buf : string -> int -> int -> unit method virtual output_byte : int -> unit method virtual clear : unit end class fstream_out_null : object method output_char : char -> unit method output_string : string -> unit method output_buf : string -> int -> int -> unit method output_byte : int -> unit method clear : unit end class fstream_out_channel : out_channel -> object method output_char : char -> unit method output_string : string -> unit method output_buf : string -> int -> int -> unit method output_byte : int -> unit method clear : unit end class fstream_out_buffer : object method output_char : char -> unit method output_string : string -> unit method output_buf : string -> int -> int -> unit method output_byte : int -> unit method contents : string method clear : unit end