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