Basic constructor macro for input-file structures.
(make-input-file [:sections <sections>])
This is the usual way to construct input-file structures. It simply conses together a structure with the specified fields.
This macro generates a new input-file structure from scratch. See also change-input-file, which can "change" an existing structure, instead.
This is an ordinary
Macro:
(defmacro make-input-file (&rest args) (std::make-aggregate 'input-file args '((:sections)) 'make-input-file nil))
Function:
(defun input-file (sections) (declare (xargs :guard (input-section-listp sections))) (declare (xargs :guard t)) (let ((__function__ 'input-file)) (declare (ignorable __function__)) (b* ((sections (mbe :logic (input-section-list-fix sections) :exec sections))) (cons :input-file (list (cons 'sections sections))))))