Function: dun-doassign
dun-doassign is a byte-compiled function defined in dunnet.el.gz.
Signature
(dun-doassign LINE ESIGN)
Source Code
;; Defined in /usr/src/emacs/lisp/play/dunnet.el.gz
(defun dun-doassign (line esign)
(if (not dun-wizard)
(let (passwd)
(dun-mprinc "Enter wizard password: ")
(setq passwd (dun-read-line))
(if (not dun-batch-mode)
(dun-mprinc "\n"))
(if (string= passwd "moby")
(progn
(setq dun-wizard t)
(dun-doassign line esign))
(dun-mprincl "Incorrect.")))
(let (varname epoint afterq i value)
(setq varname (string-replace " " "" (substring line 0 esign)))
(if (or (= (length varname) 0) (< (- (length line) esign) 2))
(progn
(dun-mprinc line)
(dun-mprincl " : not found."))
(if (not (setq epoint (string-search ")" line)))
(if (string= (substring line (1+ esign) (+ esign 2))
"\"")
(progn
(setq afterq (substring line (+ esign 2)))
(setq epoint (+
(string-search "\"" afterq)
(+ esign 3))))
(if (not (setq epoint (string-search " " line)))
(setq epoint (length line))))
(setq epoint (1+ epoint))
(while (and
(not (= epoint (length line)))
(setq i (string-search ")" (substring line epoint))))
(setq epoint (+ epoint i 1))))
(setq value (substring line (1+ esign) epoint))
(dun-eval varname value)))))