(vl-import-stars-itemnames packages design) → names
Function:
(defun vl-import-stars-itemnames (packages design) (declare (xargs :guard (and (string-listp packages) (vl-maybe-design-p design)))) (let ((__function__ 'vl-import-stars-itemnames)) (declare (ignorable __function__)) (b* (((when (atom packages)) nil) (pkg (string-fix (car packages))) (package (and design (cdr (hons-get pkg (vl-design-scope-package-alist-top design))))) ((unless package) nil)) (append (alist-keys (vl-package-scope-item-alist-top package)) (vl-import-stars-itemnames (cdr packages) design)))))
Theorem:
(defthm string-listp-of-vl-import-stars-itemnames (b* ((names (vl-import-stars-itemnames packages design))) (string-listp names)) :rule-classes :rewrite)
Theorem:
(defthm vl-import-stars-itemname-present-when-lookup (iff (member name (vl-import-stars-itemnames packages design)) (and (stringp name) (mv-nth 1 (vl-import-stars-find-item name packages design)))))
Theorem:
(defthm vl-import-stars-itemnames-of-string-list-fix-packages (equal (vl-import-stars-itemnames (string-list-fix packages) design) (vl-import-stars-itemnames packages design)))
Theorem:
(defthm vl-import-stars-itemnames-string-list-equiv-congruence-on-packages (implies (str::string-list-equiv packages packages-equiv) (equal (vl-import-stars-itemnames packages design) (vl-import-stars-itemnames packages-equiv design))) :rule-classes :congruence)
Theorem:
(defthm vl-import-stars-itemnames-of-vl-maybe-design-fix-design (equal (vl-import-stars-itemnames packages (vl-maybe-design-fix design)) (vl-import-stars-itemnames packages design)))
Theorem:
(defthm vl-import-stars-itemnames-vl-maybe-design-equiv-congruence-on-design (implies (vl-maybe-design-equiv design design-equiv) (equal (vl-import-stars-itemnames packages design) (vl-import-stars-itemnames packages design-equiv))) :rule-classes :congruence)