Load a list of files.
(vl-load-files filenames st state) → (mv st state)
Function:
(defun vl-load-files (filenames st state) (declare (xargs :stobjs (state))) (declare (xargs :guard (and (string-listp filenames) (vl-loadstate-p st)))) (let ((__function__ 'vl-load-files)) (declare (ignorable __function__)) (b* (((when (atom filenames)) (mv (vl-loadstate-fix st) state)) ((mv st state) (time$ (vl-load-file (car filenames) st state) :msg "~s0 (loaded ~f1; ~st sec, ~sa bytes)~%" :args (list (vl-loadstate-pad st) (car filenames)) :mintime (vl-loadconfig->mintime (vl-loadstate->config st))))) (vl-load-files (cdr filenames) st state))))
Theorem:
(defthm vl-loadstate-p-of-vl-load-files.st (b* (((mv ?st acl2::?state) (vl-load-files filenames st state))) (vl-loadstate-p st)) :rule-classes :rewrite)
Theorem:
(defthm state-p1-of-vl-load-files.state (implies (force (state-p1 state)) (b* (((mv ?st acl2::?state) (vl-load-files filenames st state))) (state-p1 state))) :rule-classes :rewrite)
Theorem:
(defthm unique-names-after-vl-load-files (b* (((mv new-st &) (vl-load-files filenames st state))) (implies (uniquep (vl-descriptionlist->names (vl-loadstate->descs st))) (no-duplicatesp (vl-descriptionlist->names (vl-loadstate->descs new-st))))))