Modifying constructor for type-subset structures.
(change-type-subset x [:supertype <supertype>] [:variable <variable>] [:restriction <restriction>] [:witness <witness>])
This is an often useful alternative to make-type-subset.
We construct a new type-subset structure that is a copy of
This is an ordinary
Macro:
(defmacro change-type-subset (x &rest args) (std::change-aggregate 'type-subset x args '((:supertype . type-subset->supertype) (:variable . type-subset->variable) (:restriction . type-subset->restriction) (:witness . type-subset->witness)) 'change-type-subset 'nil))