Function: edebug--concat-name
edebug--concat-name is a byte-compiled function defined in
edebug.el.gz.
Signature
(edebug--concat-name OLDNAME &rest NEWNAMES)
Source Code
;; Defined in /usr/src/emacs/lisp/emacs-lisp/edebug.el.gz
(defun edebug--concat-name (oldname &rest newnames)
(let ((newname (if (null (cdr newnames))
(car newnames)
;; Put spaces between each name, but not for the
;; leading and trailing strings, if any.
(let (beg mid end)
(dolist (name newnames)
(if (stringp name)
(push name (if mid end beg))
(when end (setq mid (nconc end mid) end nil))
(push name mid)))
(apply #'concat `(,@(nreverse beg)
,(mapconcat (lambda (x) (format "%s" x))
(nreverse mid) " ")
,@(nreverse end)))))))
(if (null oldname)
(if (or (stringp newname) (symbolp newname))
newname
(format "%s" newname))
(format "%s@%s" edebug-def-name newname))))