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