zeroc-ice / ice

All-in-one solution for creating networked applications with RPC, pub/sub, server deployment, and more.
https://zeroc.com
GNU General Public License v2.0
2k stars 592 forks source link

Initial dispatch refactoring in Swift #2258

Closed bernardnormier closed 1 month ago

bernardnormier commented 1 month ago

This is an initial refactoring of the dispatch pipeline in Swift. It includes the following:

It was a very convoluted: Error -> ICERuntimeException exception hierarchy -> std::exception_ptr. It's now a much simpler Error -> single ICEDispatchException and ICEDispatchException holds a std::exception_ptr. Nevertheless, this simpler code is temporary since the Swift code should actually marshal the full response, and not create a std::exception_ptr that the C++ code marshals.