(vl-print-str-main x &key (ps 'ps)) → ps
Function:
(defun vl-print-str-main-fn (x ps) (declare (xargs :stobjs (ps))) (declare (type string x)) (declare (xargs :guard (stringp x))) (declare (xargs :split-types t)) (let ((__function__ 'vl-print-str-main)) (declare (ignorable __function__)) (let ((rchars (vl-ps->rchars)) (col (vl-ps->col))) (if (vl-ps->htmlp) (mv-let (col rchars) (vl-html-encode-string-aux x 0 (length x) col (vl-ps->tabsize) rchars) (vl-ps-seq (vl-ps-update-rchars rchars) (vl-ps-update-col col))) (vl-ps-seq (vl-ps-update-rchars (cons (string-fix x) rchars)) (vl-ps-update-col (vl-col-after-printing-string col x)))))))
Theorem:
(defthm vl-print-str-main-fn-of-str-fix-x (equal (vl-print-str-main-fn (str-fix x) ps) (vl-print-str-main-fn x ps)))
Theorem:
(defthm vl-print-str-main-fn-streqv-congruence-on-x (implies (streqv x x-equiv) (equal (vl-print-str-main-fn x ps) (vl-print-str-main-fn x-equiv ps))) :rule-classes :congruence)