<?xml version="1.0"?>
<paste-with-annotations>
  <paste>
    <number>
      <integer>24264</integer>
    </number>
    <user>
      <string>pjb</string>
    </user>
    <title>
      <string>(defun list-all-macro-characters (&amp;optional (*readtable* *readtable*))</string>
    </title>
    <contents>
      <string>(defun list-all-macro-characters (&amp;optional (*readtable* *readtable*))
  (loop
     :with results = '()
     :for code :from 0 :below CHAR-CODE-LIMIT
     :for ch = (code-char code)
     :do (multiple-value-bind (fun ntp) (get-macro-character ch)
           (when (or fun ntp)
             (push (list ch fun ntp
                         (when (handler-case
                                   (progn (get-dispatch-macro-character ch #\a)
                                          t)
                                 (error () nil))
                           (loop
                              :for code :from 0 :below char-code-limit
                              :for sub = (code-char code)
                              :for fun = (get-dispatch-macro-character ch sub)
                              :when fun
                              :collect (list sub fun)))) results)))
     :finally (return results)))</string>
    </contents>
    <universal-time>
      <integer>3364754863</integer>
    </universal-time>
    <channel>
      <string>None</string>
    </channel>
    <colorization-mode>
      <string></string>
    </colorization-mode>
    <maybe-spam>
      <null/>
    </maybe-spam>
    <is-unicode>
      <null/>
    </is-unicode>
  </paste>
</paste-with-annotations>