(vl-pp-propport x &key (ps 'ps)) → ps
Function:
(defun vl-pp-propport-fn (x ps) (declare (xargs :stobjs (ps))) (declare (xargs :guard (vl-propport-p x))) (let ((__function__ 'vl-pp-propport)) (declare (ignorable __function__)) (b* (((vl-propport x)) (x.type.udims (vl-datatype->udims x.type))) (vl-ps-seq (if x.atts (vl-pp-atts x.atts) ps) (if (not x.localp) ps (vl-ps-span "vl_key" (vl-print "local ") (if (vl-direction-equiv x.dir :vl-input) ps (vl-ps-seq (vl-print-str (vl-direction-string x.dir)) (vl-print " "))))) (vl-pp-datatype x.type) (vl-print " ") (vl-ps-span "vl_id" (vl-print (vl-maybe-escape-identifier x.name))) (if (not x.type.udims) ps (vl-ps-seq (vl-print " ") (vl-pp-dimensionlist x.type.udims))) (vl-propactual-case x.arg (:blank ps) (:event (vl-ps-seq (vl-print " = ") (vl-pp-propactual (change-vl-propactual-event x.arg :name nil)))) (:prop (vl-ps-seq (vl-print " = ") (vl-pp-propactual (change-vl-propactual-prop x.arg :name nil)))))))))
Theorem:
(defthm vl-pp-propport-fn-of-vl-propport-fix-x (equal (vl-pp-propport-fn (vl-propport-fix x) ps) (vl-pp-propport-fn x ps)))
Theorem:
(defthm vl-pp-propport-fn-vl-propport-equiv-congruence-on-x (implies (vl-propport-equiv x x-equiv) (equal (vl-pp-propport-fn x ps) (vl-pp-propport-fn x-equiv ps))) :rule-classes :congruence)