Function: calc-embedded-finish-edit

calc-embedded-finish-edit is a byte-compiled function defined in calc-embed.el.gz.

Signature

(calc-embedded-finish-edit INFO)

Source Code

;; Defined in /usr/src/emacs/lisp/calc/calc-embed.el.gz
(defun calc-embedded-finish-edit (info)
  (let ((buf (current-buffer))
	(str (buffer-substring calc-edit-top (point-max)))
	(start (point))) ;; pos
    (switch-to-buffer calc-original-buffer)
    (let ((val (with-current-buffer (aref info 1)
		 (let ((calc-language nil)
		       (math-expr-opers (math-standard-ops)))
		   (math-read-expr str)))))
      (if (eq (car-safe val) 'error)
	  (progn
	    (switch-to-buffer buf)
	    (goto-char (+ start (nth 1 val)))
	    (error (nth 2 val))))
      (calc-embedded-original-buffer t info)
      (aset info 8 val)
      (calc-embedded-update info 14 t t))))