Wrapping C++ library


Previously, I've successfully wrapped a different C library. Now, I'd like to make use of a different library that is written in C++ (http://www.openfst.org/). The library makes heavy use of custom C++ classes, and nearly all of the interesting functions from the library would return instances of those custom classes.

I'd ideally like to create a Swift package that wraps the OpenFST library. To what extent is this currently possible?


There had been a lot of discussions regarding C++ interop on this forum.

The only working example known to me is Mirror, with the help of a C shim. There is a blog post on swift.org that goes into great details about how it works. Hopefully this is helpful to some extent.