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