@@ -59,18 +59,6 @@ struct YieldOnceResult {
59
59
ResultTy YieldValue;
60
60
};
61
61
62
- template <class FnTy >
63
- struct YieldOnceCoroutine ;
64
-
65
- // / A template which generates the type of the ramp function of a
66
- // / yield-once coroutine.
67
- template <class ResultTy , class ... ArgTys>
68
- struct YieldOnceCoroutine <ResultTy(ArgTys...)> {
69
- using type =
70
- SWIFT_CC (swift) YieldOnceResult<ResultTy> (YieldOnceBuffer *buffer,
71
- ArgTys...);
72
- };
73
-
74
62
#if SWIFT_OBJC_INTEROP
75
63
76
64
// Const cast shorthands for ObjC types.
@@ -1012,33 +1000,29 @@ const TypeContextDescriptor *swift_getTypeContextDescriptor(const Metadata *type
1012
1000
SWIFT_RUNTIME_EXPORT
1013
1001
const HeapObject *swift_getKeyPath (const void *pattern, const void *arguments);
1014
1002
1015
- // For some reason, MSVC doesn't accept these declarations outside of
1016
- // swiftCore. TODO: figure out a reasonable way to declare them.
1017
- #if defined(swiftCore_EXPORTS)
1018
-
1019
1003
// / Given a pointer to a borrowed value of type `Root` and a
1020
1004
// / `KeyPath<Root, Value>`, project a pointer to a borrowed value of type
1021
1005
// / `Value`.
1022
- SWIFT_RUNTIME_EXPORT
1023
- YieldOnceCoroutine <const OpaqueValue* ( const OpaqueValue *root,
1024
- void *keyPath)>::type
1025
- swift_readAtKeyPath ;
1006
+ SWIFT_CC (swift) SWIFT_RUNTIME_EXPORT
1007
+ YieldOnceResult <const OpaqueValue *>
1008
+ swift_readAtKeyPath (YieldOnceBuffer *buffer, const OpaqueValue *root,
1009
+ void *keypath) ;
1026
1010
1027
1011
// / Given a pointer to a mutable value of type `Root` and a
1028
1012
// / `WritableKeyPath<Root, Value>`, project a pointer to a mutable value
1029
1013
// / of type `Value`.
1030
- SWIFT_RUNTIME_EXPORT
1031
- YieldOnceCoroutine<OpaqueValue* (OpaqueValue *root, void *keyPath)>::type
1032
- swift_modifyAtWritableKeyPath;
1014
+ SWIFT_CC (swift) SWIFT_RUNTIME_EXPORT
1015
+ YieldOnceResult<OpaqueValue *>
1016
+ swift_modifyAtWritableKeyPath (YieldOnceBuffer *buffer, OpaqueValue *root,
1017
+ void *keyPath);
1033
1018
1034
1019
// / Given a pointer to a borrowed value of type `Root` and a
1035
1020
// / `ReferenceWritableKeyPath<Root, Value>`, project a pointer to a
1036
1021
// / mutable value of type `Value`.
1037
- SWIFT_RUNTIME_EXPORT
1038
- YieldOnceCoroutine<OpaqueValue* (const OpaqueValue *root, void *keyPath)>::type
1039
- swift_modifyAtReferenceWritableKeyPath;
1040
-
1041
- #endif // swiftCore_EXPORTS
1022
+ SWIFT_CC (swift) SWIFT_RUNTIME_EXPORT
1023
+ YieldOnceResult<OpaqueValue *>
1024
+ swift_modifyAtReferenceWritableKeyPath (YieldOnceBuffer *buffer,
1025
+ const OpaqueValue *root, void *keyPath);
1042
1026
1043
1027
SWIFT_RUNTIME_EXPORT
1044
1028
void swift_enableDynamicReplacementScope (const DynamicReplacementScope *scope);
0 commit comments