Function: semantic-lex-spp-table-write-slot-value
semantic-lex-spp-table-write-slot-value is an autoloaded and
byte-compiled function defined in lex-spp.el.gz.
Signature
(semantic-lex-spp-table-write-slot-value VALUE)
Documentation
Write out the VALUE of a slot for EIEIO.
The VALUE is a spp lexical table.
Source Code
;; Defined in /usr/src/emacs/lisp/cedet/semantic/lex-spp.el.gz
;;;###autoload
(defun semantic-lex-spp-table-write-slot-value (value)
"Write out the VALUE of a slot for EIEIO.
The VALUE is a spp lexical table."
(if (not value)
(princ "nil")
(princ "\n '(")
;(princ value)
(dolist (sym value)
(princ "(")
(prin1 (car sym))
(let* ((first (car (cdr sym)))
(rest (cdr sym)))
(if (not (listp first))
(insert "nil ;; bogus macro found.\n")
(when (eq (car first) 'spp-arg-list)
(princ " ")
(prin1 first)
(setq rest (cdr rest)))
(when rest
(princ " . ")
(let ((len (length (cdr rest))))
(cond ((< len 2)
(condition-case nil
(prin1 rest)
(error
(princ "nil ;; Error writing macro\n"))))
((< len semantic-lex-spp-macro-max-length-to-save)
(princ "\n ")
(condition-case nil
(prin1 rest)
(error
(princ "nil ;; Error writing macro\n "))))
(t ;; Too Long!
(princ "nil ;; Too Long!\n ")))))))
(princ ")\n "))
(princ ")\n")))