Basic constructor macro for dirabsdeclor-function structures.
(make-dirabsdeclor-function [:declor? <declor?>]
[:params <params>]
[:ellipsis <ellipsis>])
This is the usual way to construct dirabsdeclor-function structures. It simply conses together a structure with the specified fields.
This macro generates a new dirabsdeclor-function structure from scratch. See also change-dirabsdeclor-function, which can "change" an existing structure, instead.
This is an ordinary
Macro:
(defmacro make-dirabsdeclor-function (&rest args) (std::make-aggregate 'dirabsdeclor-function args '((:declor?) (:params) (:ellipsis)) 'make-dirabsdeclor-function nil))
Function:
(defun dirabsdeclor-function (declor? params ellipsis) (declare (xargs :guard (and (dirabsdeclor-optionp declor?) (param-declon-listp params) (booleanp ellipsis)))) (declare (xargs :guard t)) (b* ((declor? (mbe :logic (dirabsdeclor-option-fix declor?) :exec declor?)) (params (mbe :logic (param-declon-list-fix params) :exec params)) (ellipsis (mbe :logic (bool-fix ellipsis) :exec ellipsis))) (cons :function (cons declor? (cons params ellipsis)))))