(vl-pp-regularport x &key (ps 'ps)) → ps
Function:
(defun vl-pp-regularport-fn (x ps) (declare (xargs :stobjs (ps))) (declare (xargs :guard (vl-regularport-p x))) (let ((__function__ 'vl-pp-regularport)) (declare (ignorable __function__)) (b* (((vl-regularport x) x) ((when (and (not x.name) (not x.expr))) (vl-ps-span "vl_cmt" (vl-println? "/* blank port */"))) ((unless x.name) (vl-pp-expr x.expr)) ((when (and x.expr (vl-idexpr-p x.expr) (equal (vl-idexpr->name x.expr) x.name))) (vl-print-wirename x.name))) (vl-ps-seq (vl-print ".") (vl-ps-span "vl_id" (vl-print-str (vl-maybe-escape-identifier x.name))) (vl-print "(") (if x.expr (vl-pp-expr x.expr) ps) (vl-print ")")))))
Theorem:
(defthm vl-pp-regularport-fn-of-vl-regularport-fix-x (equal (vl-pp-regularport-fn (vl-regularport-fix x) ps) (vl-pp-regularport-fn x ps)))
Theorem:
(defthm vl-pp-regularport-fn-vl-regularport-equiv-congruence-on-x (implies (vl-regularport-equiv x x-equiv) (equal (vl-pp-regularport-fn x ps) (vl-pp-regularport-fn x-equiv ps))) :rule-classes :congruence)