diff --git a/src/code/reader.lisp b/src/code/reader.lisp index 3b4d06bec4662d7e683bd8caca1a5785c2f00705..4eabc4e13ccb7d2cb2db0e9bd2da88e264eff317 100644 --- a/src/code/reader.lisp +++ b/src/code/reader.lisp @@ -144,7 +144,7 @@ ;; vectors of CHAR-CODE-LIMIT functions, for use in defining dispatching ;; macros (like #-macro). (dispatch-tables () :type list) - (readtable-case :upcase :type (member :upcase :downcase :preserve :invert)) + (%readtable-case :upcase :type (member :upcase :downcase :preserve :invert)) ;; ;; The CHARACTER-ATTRIBUTE-HASH-TABLE handles the case of char codes ;; above ATTRIBUTE-TABLE-LIMIT, since we expect these to be @@ -466,6 +466,13 @@ (cerror "Modify it anyway." 'kernel:standard-readtable-modified-error :operation operation))) +(defun readtable-case (table) + (%readtable-case table)) + +(defun (setf readtable-case) (new-case table) + (assert-not-standard-readtable table '(setf readtable-case)) + (setf (%readtable-case table) new-case)) + (defun copy-readtable (&optional (from-readtable *readtable*) to-readtable) "A copy is made of from-readtable and place into to-readtable." (assert-not-standard-readtable to-readtable 'copy-readtable)