1.0.32.21: compress most unibyte-external-format definitions
authorChristophe Rhodes <csr21@cantab.net>
Wed, 11 Nov 2009 17:34:09 +0000 (17:34 +0000)
committerChristophe Rhodes <csr21@cantab.net>
Wed, 11 Nov 2009 17:34:09 +0000 (17:34 +0000)
commita18894dbea4495b885e1747babf4e2593dfb705e
tree6e326d93a09936dcef5ff7a15bb3af6c8fdd64f4
parent314ebe7a98015e25eb6dc750962b0726feac1b2c
1.0.32.21: compress most unibyte-external-format definitions

All the unibyte-mapper-based external-formats had huge amounts of
cut-and-pasted code, differing only in names of functions.  This is,
oddly enough, a clear case for abstracting away the repeated code into a
macro.

In the process, convert them to the multibyte apparatus, which has support
for the nice restarts, and remove the too-simple unibyte
DEFINE-EXTERNAL-FORMAT (and EXTERNAL-FORMAT-DECODING-ERROR) which are now
unused.

Include a far-from-comprehensive set of tests, which are mostly for
iso-8859-x formats
OPTIMIZATIONS
src/code/external-formats/enc-basic.lisp
src/code/external-formats/enc-cyr.lisp
src/code/external-formats/enc-dos.lisp
src/code/external-formats/enc-ebcdic.lisp
src/code/external-formats/enc-iso.lisp
src/code/external-formats/enc-win.lisp
src/code/fd-stream.lisp
tests/external-format.impure.lisp
version.lisp-expr