(defmethod ps-print ((form null))) ; don't print top-level nils (ex: result of defining macros, etc.)
(defmethod ps-print ((s symbol))
- (assert (keywordp s))
+ (assert (keywordp s) nil "~S is not a symbol" s)
(ps-print (string-downcase s)))
(defmethod ps-print ((compiled-form cons))
(defprinter js:object (&rest slot-defs)
(psw "{ ")
(loop for ((slot-name . slot-value) . remaining) on slot-defs do
- (if (and (listp slot-name) (eq 'quote (car slot-name)) (symbolp (second slot-name)))
- (psw (symbol-to-js-string (second slot-name)))
- (ps-print slot-name))
- (psw " : ")
- (ps-print slot-value)
- (when remaining (psw ", ")))
+ (ps-print slot-name) (psw " : ") (ps-print slot-value)
+ (when remaining (psw ", ")))
(psw " }"))
(defprinter js:slot-value (obj slot)