Function: vhdl-template-break
vhdl-template-break is an interactive and byte-compiled function
defined in vhdl-mode.el.gz.
Signature
(vhdl-template-break)
Documentation
Insert a break statement.
Key Bindings
Source Code
;; Defined in /usr/src/emacs/lisp/progmodes/vhdl-mode.el.gz
(defun vhdl-template-break ()
"Insert a break statement."
(interactive)
(let (position)
(vhdl-insert-keyword "BREAK")
(setq position (point))
(insert " ")
(while (or
(progn (vhdl-insert-keyword "FOR ")
(if (vhdl-template-field "[quantity name]" " USE " t)
(progn (vhdl-template-field "quantity name" " => ") t)
(delete-region (point)
(progn (forward-word-strictly -1) (point)))
nil))
(vhdl-template-field "[quantity name]" " => " t))
(vhdl-template-field "expression")
(setq position (point))
(insert ", "))
(delete-region position (point))
(unless (vhdl-sequential-statement-p)
(vhdl-insert-keyword " ON ")
(if (vhdl-template-field "[sensitivity list]" nil t)
(setq position (point))
(delete-region position (point))))
(vhdl-insert-keyword " WHEN ")
(when vhdl-conditions-in-parenthesis (insert "("))
(if (vhdl-template-field "[condition]" nil t)
(when vhdl-conditions-in-parenthesis (insert ")"))
(delete-region position (point)))
(insert ";")))