Function: vhdl-port-reverse-direction
vhdl-port-reverse-direction is an interactive and byte-compiled
function defined in vhdl-mode.el.gz.
Signature
(vhdl-port-reverse-direction)
Documentation
Reverse direction for all ports (useful in testbenches).
This operation is performed on an internally stored port and is only reflected in a subsequent paste operation.
Key Bindings
Source Code
;; Defined in /usr/src/emacs/lisp/progmodes/vhdl-mode.el.gz
(defun vhdl-port-reverse-direction ()
"Reverse direction for all ports (useful in testbenches).
This operation is performed on an internally stored port and is only
reflected in a subsequent paste operation."
(interactive)
(if (not vhdl-port-list)
(error "ERROR: No port has been read")
(message "Reversing port directions for next paste...")
(let ((port-list (nth 2 vhdl-port-list))
port-dir-car port-dir)
;; traverse port list and reverse directions
(while port-list
(setq port-dir-car (cddr (car port-list))
port-dir (car port-dir-car))
(setcar port-dir-car
(cond ((equal port-dir "in") "out")
((equal port-dir "IN") "OUT")
((equal port-dir "out") "in")
((equal port-dir "OUT") "IN")
(t port-dir)))
(setq port-list (cdr port-list)))
(setq vhdl-port-reversed-direction (not vhdl-port-reversed-direction))
(message "Reversing port directions for next paste...done"))))