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