Module: io-test-suite Synopsis: IO library test suite Author: Andy Armstrong, et al... Copyright: Original Code is Copyright (c) 1995-2004 Functional Objects, Inc. All rights reserved. License: Functional Objects Library Public License Version 1.0 Dual-license: GNU Lesser General Public License Warranty: Distributed WITHOUT WARRANTY OF ANY KIND define library-spec io () module streams; // module streams-internals; module pprint; module print; // module print-internals; // module format; // module format-internals; // module standard-io; // module format-out; suite universal-streams-suite; suite additional-streams-suite; suite format-test-suite; end library-spec io; define module-spec streams () // Constants constant :: ; constant :: ; constant :: ; // constant :: ; // Classes sealed instantiable concrete class (); open instantiable class (); open instantiable class (); open instantiable class (); // open instantiable class (); sealed instantiable class (); sealed instantiable class (); abstract class (); // Stream convenience functions open generic-function read-line (, #"key", #"on-end-of-stream") => (, ); open generic-function read-line-into! (, , #"key", #"start", #"on-end-of-stream", #"grow?") => (, ); open generic-function read-text (, , #"key", #"on-end-of-stream") => (); open generic-function read-text-into! (, , , #"key", #"start", #"on-end-of-stream") => (); function skip-through (, , #"key", #"test") => (); open generic-function write-line (, , #"key", #"start", #"end") => (); open generic-function write-text (, , #"key", #"start", #"end") => (); function read-through (, , #"key", #"on-end-of-stream", #"test") => (, ); function read-to (, , #"key", #"on-end-of-stream", #"test") => (, ); function read-to-end () => (); open generic-function new-line () => (); // Miscellaneous stream functions function stream-lock () => (); function stream-lock-setter (, ) => (); // Wrapper streams open abstract instantiable class (); open generic-function inner-stream () => (); open generic-function inner-stream-setter (, ) => (); open generic-function outer-stream () => (); open generic-function outer-stream-setter (, ) => (); // Stream buffers sealed instantiable class (); function buffer-next () => (); function buffer-next-setter (, ) => (); function buffer-end () => (); function buffer-end-setter (, ) => (); open generic-function buffer-subsequence (, , , ) => (); open generic-function copy-into-buffer! (, , , #"key", #"start", #"end") => (); open generic-function copy-from-buffer! (, , , #"key", #"start", #"end") => (); // Buffered streams open abstract class (); function get-input-buffer (, #"key", #"wait?", #"bytes") => (false-or()); open generic-function do-get-input-buffer (, #"key", #"wait?", #"bytes") => (false-or()); function get-output-buffer (, #"key", #"bytes") => (); open generic-function do-get-output-buffer (, #"key", #"bytes") => (); function input-available-at-source? () => (); open generic-function do-input-available-at-source? () => (); function next-input-buffer (, #"key", #"wait?", #"bytes") => (false-or()); open generic-function do-next-input-buffer (, #"key", #"wait?", #"bytes") => (false-or()); function next-output-buffer (, #"key", #"bytes") => (); open generic-function do-next-output-buffer (, #"key", #"bytes") => (); function release-input-buffer () => (); open generic-function do-release-input-buffer () => (); function release-output-buffer () => (); open generic-function do-release-output-buffer () => (); // Macros macro-test with-input-buffer-test; macro-test with-output-buffer-test; macro-test with-output-to-string-test; end module-spec streams; define module-spec pprint () variable *print-miser-width* :: false-or(); variable *default-line-length* :: ; sealed instantiable class (); function pprint-logical-block () => (); function pprint-newline (, ) => (); function pprint-indent (, , ) => (); function pprint-tab (, , , ) => (); macro-test printing-logical-block-test; end module-spec pprint; define module-spec print () variable *print-length* :: false-or(); variable *print-level* :: false-or(); variable *print-circle?* :: ; variable *print-pretty?* :: ; variable *print-escape?* :: ; function print (, ) => (); open generic-function print-object (, ) => (); function print-to-string () => (); macro-test printing-object-test; end module-spec print;