Function: calc-finish-formula-edit
calc-finish-formula-edit is a byte-compiled function defined in
calc-prog.el.gz.
Signature
(calc-finish-formula-edit FUNC)
Source Code
;; Defined in /usr/src/emacs/lisp/calc/calc-prog.el.gz
(defun calc-finish-formula-edit (func)
(let ((buf (current-buffer))
(str (buffer-substring calc-edit-top (point-max)))
(start (point))
(body (calc-valid-formula-func func)))
(set-buffer calc-original-buffer)
(let ((val (math-read-expr str)))
(if (eq (car-safe val) 'error)
(progn
(set-buffer buf)
(goto-char (+ start (nth 1 val)))
(error (nth 2 val))))
(setcar (cdr body)
(let ((calc-user-formula-alist (nth 1 (symbol-function func))))
(calc-fix-user-formula val)))
(put func 'calc-user-defn val))))