Constructor macro for expdata-surjmapp structures.
Syntax:
(make-expdata-surjmap [:surjname <surjname>]
[:localp <localp>]
[:oldp <oldp>]
[:newp <newp>]
[:forth <forth>]
[:back <back>]
[:forth-image <forth-image>]
[:back-image <back-image>]
[:back-of-forth <back-of-forth>]
[:forth-injective <forth-injective>]
[:oldp-guard <oldp-guard>]
[:newp-guard <newp-guard>]
[:forth-guard <forth-guard>]
[:back-guard <back-guard>]
[:hints <hints>])
This is our preferred way to construct expdata-surjmapp structures. It simply conses together a structure with the specified fields.
This macro generates a new expdata-surjmapp structure from scratch. See also change-expdata-surjmap, which can "change" an existing structure, instead.
The expdata-surjmapp structures we create here are just constructed with ordinary cons. If you want to create honsed structures, see make-honsed-expdata-surjmap instead.
This is an ordinary
Macro:
(defmacro make-expdata-surjmap (&rest args) (std::make-aggregate 'expdata-surjmap args '((:surjname) (:localp) (:oldp) (:newp) (:forth) (:back) (:forth-image) (:back-image) (:back-of-forth) (:forth-injective) (:oldp-guard) (:newp-guard) (:forth-guard) (:back-guard) (:hints)) 'make-expdata-surjmap nil))