Hi !
I wanted to know whether the aim of this project is to create a bridging header that exposes the C++ functions and types one would want to use in Swift, or am I getting the wrong idea?
(New here)
@egor.zhdan
Hi,
Not quite: the idea is to expand the existing module that augments some types from the C++ standard library. This module is implemented in Swift and we call it the overlay.
Here is the source code of the overlay: swift/stdlib/public/Cxx at main · apple/swift · GitHub
For instance, the overlay provides a way to convert a std::string
to a Swift.String
: swift/String.swift at a8e32837506f98878aabad9aceb3fd173ef238a7 · apple/swift · GitHub
Note that this functionality is implemented in Swift, as a Swift extension for the C++ type std::string
.
1 Like