(vls-showloc file line col data) → ans
Function:
(defun vls-showloc (file line col data) (declare (xargs :guard (and (stringp file) (stringp line) (stringp col) (vls-data-p data)))) (let ((__function__ 'vls-showloc)) (declare (ignorable __function__)) (b* (((vls-data data)) (line (str::strval line)) (col (str::strval col)) ((unless (posp line)) "Error: Invalid line number") ((unless (natp col)) "Error: Invalid column number") (loc (make-vl-location :filename file :line line :col col)) (contents (cdr (hons-assoc-equal file data.filemap))) ((unless contents) (cat "No filemap binding for " file)) (desc (vl-find-description-for-loc loc (alist-vals (vls-data->orig-descalist data)))) ((unless desc) (cat "No description found for location ~x0.")) (min (vl-location->line (vl-description->minloc desc))) (max (vl-location->line (vl-description->maxloc desc)))) (with-local-ps (vl-ps-seq (vl-ps-update-htmlp t) (vls-showloc-print contents min max line col))))))
Theorem:
(defthm stringp-of-vls-showloc (b* ((ans (vls-showloc file line col data))) (stringp ans)) :rule-classes :type-prescription)