(vl-class-scope-item-alist scope acc) → alist
Function:
(defun vl-class-scope-item-alist (scope acc) (declare (xargs :guard (vl-class-p scope))) (let ((__function__ 'vl-class-scope-item-alist)) (declare (ignorable __function__)) (b* (((vl-class scope)) (acc (vl-typedeflist-alist scope.typedefs acc)) (acc (vl-taskdecllist-alist scope.taskdecls acc)) (acc (vl-fundecllist-alist scope.fundecls acc)) (acc (vl-vardecllist-alist scope.vardecls acc)) (acc (vl-paramdecllist-alist scope.paramdecls acc))) acc)))
Theorem:
(defthm return-type-of-vl-class-scope-item-alist (b* ((alist (vl-class-scope-item-alist scope acc))) (implies (vl-scopeitem-alist-p acc) (vl-scopeitem-alist-p alist))) :rule-classes :rewrite)
Theorem:
(defthm vl-class-scope-item-alist-lookup-acc-elim (implies (syntaxp (not (equal acc ''nil))) (equal (hons-assoc-equal name (vl-class-scope-item-alist scope acc)) (or (hons-assoc-equal name (vl-class-scope-item-alist scope nil)) (hons-assoc-equal name acc)))))
Theorem:
(defthm vl-class-scope-item-alist-correct (implies (stringp name) (equal (hons-assoc-equal name (vl-class-scope-item-alist scope nil)) (b* ((item (vl-class-scope-find-item name scope))) (and item (cons name item))))))
Theorem:
(defthm vl-class-scope-item-alist-of-vl-class-fix-scope (equal (vl-class-scope-item-alist (vl-class-fix scope) acc) (vl-class-scope-item-alist scope acc)))
Theorem:
(defthm vl-class-scope-item-alist-vl-class-equiv-congruence-on-scope (implies (vl-class-equiv scope scope-equiv) (equal (vl-class-scope-item-alist scope acc) (vl-class-scope-item-alist scope-equiv acc))) :rule-classes :congruence)