Forked from
asdf / asdf
Source project has a limited visibility.
-
Francois-Rene Rideau authored
* it handles INPUT and ERROR-OUTPUT, not just OUTPUT. * it accepts PATHNAMEs as I/O designators * it works on ECL under SLIME (fixes lp#1232225) * SLIGHT API CHANGE! At the suggestion of stassats, we're always returning an exit code, and in a predictable return value position. However, both for backward compatibility and usability, the OUTPUT slurping results remain the primary return value, followed by the ERROR-OUTPUT slurping results, followed by the exit code. So far, no one was using multiple values in SLURP-INPUT-STREAM methods, so no one will regret that, except people who might have somehow expected the old weird behavior of a return code when OUTPUT is NIL or :INTERACTIVE. * As another API tweak and improvement, keyword options are now specified separately for each of your I/O designators, by putting them your designator in a list. A list also distinguishes a string as input from a namestring to designate a pathname, i.e. :input '("bar") is the string literal, whereas :input "bar" is the file named bar. Several fixes and extensions to stream support. Only tested so far on Linux x64 with ccl clisp sbcl ecl ecl_bytecodes cmucl abcl allegro allegromodern xcl
Francois-Rene Rideau authored* it handles INPUT and ERROR-OUTPUT, not just OUTPUT. * it accepts PATHNAMEs as I/O designators * it works on ECL under SLIME (fixes lp#1232225) * SLIGHT API CHANGE! At the suggestion of stassats, we're always returning an exit code, and in a predictable return value position. However, both for backward compatibility and usability, the OUTPUT slurping results remain the primary return value, followed by the ERROR-OUTPUT slurping results, followed by the exit code. So far, no one was using multiple values in SLURP-INPUT-STREAM methods, so no one will regret that, except people who might have somehow expected the old weird behavior of a return code when OUTPUT is NIL or :INTERACTIVE. * As another API tweak and improvement, keyword options are now specified separately for each of your I/O designators, by putting them your designator in a list. A list also distinguishes a string as input from a namestring to designate a pathname, i.e. :input '("bar") is the string literal, whereas :input "bar" is the file named bar. Several fixes and extensions to stream support. Only tested so far on Linux x64 with ccl clisp sbcl ecl ecl_bytecodes cmucl abcl allegro allegromodern xcl