(vl-package-scope-item-alist scope acc) → alist
Function:
(defun vl-package-scope-item-alist (scope acc) (declare (xargs :guard (vl-package-p scope))) (let ((__function__ 'vl-package-scope-item-alist)) (declare (ignorable __function__)) (b* (((vl-package scope)) (acc (vl-dpiimportlist-alist scope.dpiimports acc)) (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-package-scope-item-alist (b* ((alist (vl-package-scope-item-alist scope acc))) (implies (vl-scopeitem-alist-p acc) (vl-scopeitem-alist-p alist))) :rule-classes :rewrite)
Theorem:
(defthm vl-package-scope-item-alist-lookup-acc-elim (implies (syntaxp (not (equal acc ''nil))) (equal (hons-assoc-equal name (vl-package-scope-item-alist scope acc)) (or (hons-assoc-equal name (vl-package-scope-item-alist scope nil)) (hons-assoc-equal name acc)))))
Theorem:
(defthm vl-package-scope-item-alist-correct (implies (stringp name) (equal (hons-assoc-equal name (vl-package-scope-item-alist scope nil)) (b* ((item (vl-package-scope-find-item name scope))) (and item (cons name item))))))
Theorem:
(defthm vl-package-scope-item-alist-of-vl-package-fix-scope (equal (vl-package-scope-item-alist (vl-package-fix scope) acc) (vl-package-scope-item-alist scope acc)))
Theorem:
(defthm vl-package-scope-item-alist-vl-package-equiv-congruence-on-scope (implies (vl-package-equiv scope scope-equiv) (equal (vl-package-scope-item-alist scope acc) (vl-package-scope-item-alist scope-equiv acc))) :rule-classes :congruence)