: empty-inverse ( class -- quot )
deconstruct-pred
- [ tuple>array rest [ ] any? [ fail ] when ]
+ [ tuple-slots [ ] any? [ fail ] when ]
compose ;
\ new 1 [ ?wrapped empty-inverse ] define-pop-inverse
CHAR: T write1
[ class-of (serialize) ]
[ add-object ]
- [ tuple>array rest (serialize) ]
+ [ tuple-slots (serialize) ]
tri
] serialize-shared ;
: attributes. ( attrs -- )
"[" write
- [ class-of "slots" word-prop ] [ tuple>array rest ] bi
+ [ class-of "slots" word-prop ] [ tuple-slots ] bi
[ [ name>> ] dip attribute, ] 2each
"]" write ;