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