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