(vl-inline-mods x all-mods) inlines all modules in
(vl-inline-mods x all-mods) → new-mods
Function:
(defun vl-inline-mods (x all-mods) (declare (xargs :guard (and (and (vl-modulelist-p x) (vl-ok-to-inline-list-p x)) (vl-modulelist-p all-mods)))) (let ((__function__ 'vl-inline-mods)) (declare (ignorable __function__)) (if (atom x) all-mods (b* ((all-mods (vl-inline-mod-in-mods-aux (car x) all-mods))) (vl-inline-mods (cdr x) all-mods)))))
Theorem:
(defthm vl-modulelist-p-of-vl-inline-mods (implies (and (force (if (vl-modulelist-p x) (vl-ok-to-inline-list-p x) 'nil)) (force (vl-modulelist-p all-mods))) (b* ((new-mods (vl-inline-mods x all-mods))) (vl-modulelist-p new-mods))) :rule-classes :rewrite)