The equivalent functionality we're planning to implement is Type Masquerading, but it's still on the Roadmap: https://index.ros.org/doc/ros2/Roadmap/ Our research showed that it was hard to match or beat the default serialization and teh cost of the extra copy initially is much less expensive compared to the serialization so custom serialization makes adapting types more work and more error prone and likely less performant. If you want high performance make sure to stay with compatible pointers to avoid interprocess communications and then you won't have to serialize.
I believe this is the latest info: https://discourse.ros.org/t/ros2-type...
It was originally planned for this demo: https://github.com/ros2/ros2/issues/55 and there's some sketches of approach planned at the time.