: swap! ( struct -- struct ) [ [ >c-ptr ] [ class struct-slots ] bi [ [ offset>> dup ] [ type>> heap-size + ] bi rot <slice> reverse! drop ] with each ] keep ;
Done