Commit Graph

17 Commits

Author SHA1 Message Date
Alex Lorenz
83db71b64e [interop][SwiftToCxx] use the more appropriate String -> NSString bridging invocation
This fixes some CI failures
2022-11-29 15:19:26 -08:00
Alex Lorenz
0312e0613d [interop][SwiftToCxxToSwift] hide reverse interop module namespaces from forward interop 2022-11-07 15:52:04 -08:00
Alex Lorenz
c179e23b19 [interop][SwiftToCxx] add static_assert type checking for generic types in pre-C++20 mode 2022-11-01 17:36:37 -07:00
Alex Lorenz
4b52ae08fa [interop][SwiftToCxx] check that generics can be built in C++17/C++14 mode 2022-11-01 16:40:42 -07:00
Alex Lorenz
953c124ceb [interop][SwiftToCxx] guard 'requires' clauses in __cpp_concepts #ifdefs 2022-11-01 16:17:10 -07:00
Alex Lorenz
f6cc59246b [interop][SwiftToCxx] fix the include path for swiftToCxx shim header for clang in /usr/local/bin/clang 2022-09-30 07:59:46 -07:00
Alex Lorenz
dd7e068391 [interop][SwiftToCxx] add a Swift stdlib overlay header
It currently provides begin and end functions for array iteration
2022-09-29 07:41:54 -07:00
Alex Lorenz
ae549531ac Merge pull request #61225 from hyp/eng/fwd-generic-trait
[interop][SwiftToCxx] Declare the generic usability type trait before…
2022-09-21 15:56:14 -07:00
Alex Lorenz
2a05109c58 [interop][SwiftToCxx] Declare the generic usability type trait before the C++ class that represents the Swift type
This allows you to import a method that returns the type of the context in which the method is declared when such
type is a generic parameter in another type. This means that it's now possible to bridge the initializer for
RawRepresentable enums.
2022-09-21 07:57:32 -07:00
Alex Lorenz
1d6d3ff970 [interop][SwiftToCxx] trap on moves of Swift values for now
Move support will be added later
2022-09-21 06:59:29 -07:00
Alex Lorenz
143ce1e682 [interop][SwiftToCxx] bridge Swift's Optional type in an experimental manner 2022-09-15 12:35:33 -07:00
Alex Lorenz
8c48d268d5 [interop][SwiftToCxx] expose subscript getter for Array's operator [] 2022-09-12 21:13:44 -07:00
Alex Lorenz
d5c531fefc [interop][SwiftToCxx] experimentally expose exposable Swift's Array members to C++ 2022-09-12 20:42:16 -07:00
Alex Lorenz
1d164039b1 [interop][SwiftToCxx] experimentally expose Swift's Array type
This is done without annotations on the stdlib yet while @_expose is still experimental
2022-09-08 11:04:03 -07:00
Alex Lorenz
06d9fd24d4 [interop][SwiftToCxx] add experimental Swift::String -> NSString conversion operator 2022-08-25 15:09:30 -07:00
Alex Lorenz
bd8c874e17 [interop][SwiftToCxx] experimentally expose Swift::String type to C++
The only member that's currently exposed is the default initializer, everything else is in extensions
2022-08-25 15:09:30 -07:00
Alex Lorenz
e9450cf80b [interop][SwiftToCxx] add a test to print out empty Swift stdlib module 2022-08-24 15:10:11 -07:00