Doug Gregor
|
413fb37b70
|
[Print as C++] Don't crash on sugared types
|
2022-08-30 11:01:51 -07:00 |
|
Roberto Rosmaninho
|
ec10c5f5e6
|
[SwiftToCxx] Adding _Nullable to avoid warnings
|
2022-08-30 14:15:45 -03:00 |
|
Roberto Rosmaninho
|
17ae63592f
|
[SwiftToCxx] Implementing the Swift Error representation in C++
|
2022-08-30 14:14:21 -03:00 |
|
Tongjie Wang
|
cbc23cbafc
|
[Interop][SwiftToCxx] Support enum creation from Cxx
|
2022-08-29 20:16:52 -07:00 |
|
Alex Lorenz
|
a89d4f3ced
|
[interop][SwiftToCxx] add support for generic methods
|
2022-08-29 14:11:33 -07:00 |
|
Alex Lorenz
|
c08428cd56
|
[interop][SwiftToCxx] do not support generics with requirements for now
|
2022-08-29 12:14:33 -07:00 |
|
Alex Lorenz
|
9fc19fb60c
|
Merge pull request #60827 from hyp/eng/expose-init
[interop][SwiftToCxx] support @_expose attribute on initializers
|
2022-08-29 11:48:23 -07:00 |
|
Alex Lorenz
|
925ba6f7ab
|
Merge pull request #60051 from WANGJIEKE/fix-value-witness-table-type
Change return type of getEnumTag in value witness table
|
2022-08-29 11:35:42 -07:00 |
|
Alex Lorenz
|
7bf7642d51
|
[interop][SwiftToCxx] support @_expose attribute on initializers
|
2022-08-29 07:41:49 -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
|
288e4cb566
|
[interop][SwiftToCxx] do not emit functions/methods that use unexposed types
|
2022-08-25 15:09:26 -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 |
|
Alex Lorenz
|
8de79390be
|
[interop][SwiftToCxx] add @_expose(Cxx) attribute support
This attribute instructs the compiler that this declaration should be included in the generated C++ bindings
|
2022-08-24 10:14:07 -07:00 |
|
Slava Pestov
|
b254dc2141
|
PrintAsClang: Stop calling getAllConformances() on protocols
|
2022-08-23 00:03:37 -04:00 |
|
Alex Lorenz
|
489c16e906
|
[interop][SwiftToCxx] fix the circular depedency issue for struct emission
|
2022-08-19 15:02:56 -07:00 |
|
Tongjie Wang
|
7f9fadb7d8
|
Fix type for resilient enum case global variables
|
2022-08-18 12:31:40 -07:00 |
|
Tongjie Wang
|
ae73a03ec0
|
Merge branch 'main' into fix-value-witness-table-type
|
2022-08-18 09:57:57 -07:00 |
|
Alex Lorenz
|
f5787c9e40
|
Merge pull request #60564 from WANGJIEKE/cxx-interop-new-enum-design
[Interop][SwiftToCxx] Update current enum implementation for new enum design
|
2022-08-17 06:32:32 -07:00 |
|
Alex Lorenz
|
7d33a85e03
|
Merge pull request #60583 from hyp/eng/unsupported-noooo
[interop][SwiftToCxx] do not emit unsupported function signatures yet
|
2022-08-16 21:27:37 -07:00 |
|
Alex Lorenz
|
d4a7f86e3d
|
[interop][SwiftToCxx] do not emit unsupported function signatures yet
|
2022-08-16 14:39:22 -07:00 |
|
Alex Lorenz
|
dcf87a2f6d
|
[interop][SwiftToCxx] prohibit printing of generic structs for now
|
2022-08-16 10:58:13 -07:00 |
|
Alex Lorenz
|
94f6496431
|
[interop][SwiftToCxx] NFC,do not require definition of protocols for classes in C++ generation mode
|
2022-08-16 10:44:18 -07:00 |
|
Tongjie Wang
|
4b9d9cc04f
|
update formatting
|
2022-08-15 20:24:03 -07:00 |
|
Tongjie Wang
|
482e1ac80f
|
[Interop][SwiftToCxx] Implement the new enum header design
|
2022-08-15 15:31:43 -07:00 |
|
Alex Lorenz
|
9151db55e7
|
Merge pull request #60451 from WANGJIEKE/cxx-interop-resilient-enum
[Interop][SwiftToCxx] add support for resilient enum
|
2022-08-11 06:52:08 -07:00 |
|
Alex Lorenz
|
d23a64e622
|
[interop][SwiftToCxx] NFC, reformat printTypeGenericTraits
|
2022-08-09 14:20:41 -07:00 |
|
Alex Lorenz
|
f371c4307b
|
[interop][SwiftToCxx] pass boxed resilient value types to generic functions correctly
|
2022-08-09 14:16:58 -07:00 |
|
Alex Lorenz
|
c537cd2383
|
[interop][SwiftToCxx] NFC, move swift::_impl::OpaqueStorage into _SwiftCxxInteroperability shims header
|
2022-08-09 13:57:34 -07:00 |
|
Alex Lorenz
|
330fc0b07a
|
[interop][SwiftToCxx] generic functions should return value types correctly
|
2022-08-09 05:20:58 -07:00 |
|
Alex Lorenz
|
bf224c75a6
|
[interop][SwiftToCxx] pass structs to generic functions
|
2022-08-08 15:28:00 -07:00 |
|
Tongjie Wang
|
ff28b56e15
|
[Interop][SwiftToCxx] add support for resilient enum
|
2022-08-08 14:37:13 -07:00 |
|
Alex Lorenz
|
7ecf84a771
|
[interop][SwiftToCxx] ensure that resilient class values are supported
|
2022-08-08 13:08:54 -07:00 |
|
Alex Lorenz
|
bb7ba7c7ce
|
Merge pull request #60442 from hyp/eng/generic-class
[interop][SwiftToCxx] add support for passing and returning class val…
|
2022-08-08 13:06:46 -07:00 |
|
Alex Lorenz
|
a9f262e322
|
[interop][SwiftToCxx] add support for passing and returning class values to generic functions
|
2022-08-08 08:38:28 -07:00 |
|
Alex Lorenz
|
7384ee2a24
|
Merge pull request #60381 from hyp/eng/i/class-members-docs
[interop][SwiftToCxx] add support for members in class types
|
2022-08-05 05:57:13 +01:00 |
|
Tongjie Wang
|
d34e086c79
|
Change return type of getEnumTag in value witness table
make it actually matches the description above
|
2022-08-04 18:41:16 -07:00 |
|
Alex Lorenz
|
91d21244ea
|
Merge pull request #60375 from hyp/eng/i/shimspathtool
[interop][SwiftToCxx] include _SwiftCxxInteroperability.h in the tool…
|
2022-08-03 23:12:51 +01:00 |
|
Alex Lorenz
|
aab5c45c01
|
[interop][SwiftToCxx] include _SwiftCxxInteroperability.h in the toolchain, relative to clang's resource dir
|
2022-08-03 18:31:53 +01:00 |
|
Alex Lorenz
|
7eefb30cb1
|
[interop][SwiftToCxx] emit property accessors in class types correctly
property accessors could potentially mutate the class instance, so don't make them const
|
2022-08-03 13:12:51 +01:00 |
|
Alex Lorenz
|
c0bda0617a
|
[interop][SwiftToCxx] emit class method bindings
|
2022-08-03 13:03:45 +01:00 |
|
Alex Lorenz
|
7c5b160bc6
|
[interop][SwiftToCxx] map class inheritance to C++ class hierarchy
|
2022-08-03 09:35:36 +01:00 |
|
Alex Lorenz
|
478987b54e
|
[interop][SwiftToCxx] expose getOpaquePointer class pointer accessors via swift helper class in shims header
|
2022-08-02 20:15:10 +01:00 |
|
Alex Lorenz
|
0ca61069ea
|
[interop][SwiftToCxx] Add a base ref counted Swift class type to _SwiftCxxInteroperability.h header
|
2022-08-02 18:54:14 +01:00 |
|
Alex Lorenz
|
c332a90a8a
|
[interop][SwiftToCxx] retain & release class values when a C++ class reference is copy assigned
|
2022-08-02 17:52:49 +01:00 |
|
Alex Lorenz
|
e289865861
|
[interop][SwiftToCxx] retain class values when a C++ class reference is copy constructed
|
2022-08-02 17:34:21 +01:00 |
|
Alex Lorenz
|
e1d812a848
|
[interop][SwiftToCxx] pass class parameter types by 'inout'
|
2022-08-02 16:48:12 +01:00 |
|
Alex Lorenz
|
51c0a3ff05
|
[interop][SwiftToCxx] add support for passing class types to Swift functions
|
2022-08-02 15:22:16 +01:00 |
|
Alex Lorenz
|
a8ed297e8b
|
[interop][SwiftToCxx] class bridging: use makeRetained to return a class value from Swift
|
2022-08-02 14:55:58 +01:00 |
|
Alex Lorenz
|
26d55a2b83
|
[interop][SwiftToCxx] start emitting bindings for Swift class types
This includes release on destruction, and correctly returning class values from Swift to C++.
|
2022-08-02 09:25:35 +01:00 |
|