(defun emit-princ-attribute (name value)
(unless (stringp name)
(setf name (string-downcase (princ-to-string name))))
(emit-code
(rebinding (value)
`(case ,value
((t)
(princ ,(concatenate 'string " " name "=\"" name "\"")
*yaclml-stream*))
((nil) nil)
(t
(princ ,(concatenate 'string " " name "=\"") *yaclml-stream*)
(emit-attribute-value ,value)
(princ "\"" *yaclml-stream*))))))Source Context