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