18
18
#define SWIFT_RUNTIME_CONCURRENCY_H
19
19
20
20
#include " swift/ABI/TaskGroup.h"
21
- #include " swift/ABI/AsyncLet.h"
22
21
#include " swift/ABI/TaskStatus.h"
23
22
24
23
#pragma clang diagnostic push
@@ -50,17 +49,15 @@ using FutureAsyncSignature =
50
49
// / closure.
51
50
SWIFT_EXPORT_FROM (swift_Concurrency) SWIFT_CC(swift)
52
51
AsyncTaskAndContext swift_task_create_future (
53
- JobFlags flags,
54
- const Metadata *futureResultType,
52
+ JobFlags flags, const Metadata *futureResultType,
55
53
void *closureEntryPoint,
56
54
HeapObject * /* +1 */ closureContext);
57
55
58
56
// / Create a task object with a future which will run the given
59
57
// / function.
60
58
SWIFT_EXPORT_FROM (swift_Concurrency) SWIFT_CC(swift)
61
59
AsyncTaskAndContext swift_task_create_future_f (
62
- JobFlags flags,
63
- const Metadata *futureResultType,
60
+ JobFlags flags, const Metadata *futureResultType,
64
61
FutureAsyncSignature::FunctionType *function,
65
62
size_t initialContextSize);
66
63
@@ -77,8 +74,7 @@ AsyncTaskAndContext swift_task_create_group_future(
77
74
// / function, and offer its result to the task group
78
75
SWIFT_EXPORT_FROM (swift_Concurrency) SWIFT_CC(swift)
79
76
AsyncTaskAndContext swift_task_create_group_future_f (
80
- JobFlags flags,
81
- TaskGroup *group,
77
+ JobFlags flags, TaskGroup *group,
82
78
const Metadata *futureResultType,
83
79
FutureAsyncSignature::FunctionType *function,
84
80
size_t initialContextSize);
@@ -173,7 +169,7 @@ SWIFT_CC(swiftasync)
173
169
// / \code
174
170
// / func swift_taskGroup_wait_next_throwing(
175
171
// / waitingTask: Builtin.NativeObject, // current task
176
- // / group: Builtin.RawPointer
172
+ // / group: UnsafeRawPointer
177
173
// / ) async -> T
178
174
// / \endcode
179
175
SWIFT_EXPORT_FROM (swift_Concurrency)
@@ -188,7 +184,8 @@ void swift_taskGroup_wait_next_throwing(
188
184
// / Its Swift signature is
189
185
// /
190
186
// / \code
191
- // / func swift_taskGroup_initialize(group: Builtin.RawPointer)
187
+ // / func swift_taskGroup_initialize(group: Builtin.RawPointer
188
+ // / )
192
189
// / \endcode
193
190
SWIFT_EXPORT_FROM (swift_Concurrency) SWIFT_CC(swift)
194
191
void swift_taskGroup_initialize (TaskGroup *group);
@@ -205,6 +202,7 @@ void swift_taskGroup_initialize(TaskGroup *group);
205
202
// / \code
206
203
// / func swift_taskGroup_attachChild(
207
204
// / group: Builtin.RawPointer,
205
+ // / parent: Builtin.NativeObject,
208
206
// / child: Builtin.NativeObject
209
207
// / )
210
208
// / \endcode
@@ -216,7 +214,7 @@ void swift_taskGroup_attachChild(TaskGroup *group, AsyncTask *child);
216
214
// / This function MUST be called from the AsyncTask running the task group.
217
215
// /
218
216
// / \code
219
- // / func swift_taskGroup_destroy(_ group: Builtin.RawPointer )
217
+ // / func swift_taskGroup_destroy(_ group: UnsafeRawPointer )
220
218
// / \endcode
221
219
SWIFT_EXPORT_FROM (swift_Concurrency) SWIFT_CC(swift)
222
220
void swift_taskGroup_destroy (TaskGroup *group);
@@ -246,7 +244,7 @@ bool swift_taskGroup_addPending(TaskGroup *group, bool unconditionally);
246
244
// / Its Swift signature is
247
245
// /
248
246
// / \code
249
- // / func swift_taskGroup_cancelAll(group: Builtin.RawPointer )
247
+ // / func swift_taskGroup_cancelAll(group: UnsafeRawPointer )
250
248
// / \endcode
251
249
SWIFT_EXPORT_FROM (swift_Concurrency) SWIFT_CC(swift)
252
250
void swift_taskGroup_cancelAll (TaskGroup *group);
@@ -259,7 +257,7 @@ void swift_taskGroup_cancelAll(TaskGroup *group);
259
257
// / This can be called from any thread. Its Swift signature is
260
258
// /
261
259
// / \code
262
- // / func swift_taskGroup_isCancelled(group: Builtin.RawPointer )
260
+ // / func swift_taskGroup_isCancelled(group: UnsafeRawPointer )
263
261
// / \endcode
264
262
SWIFT_EXPORT_FROM (swift_Concurrency) SWIFT_CC(swift)
265
263
bool swift_taskGroup_isCancelled (TaskGroup *group);
@@ -276,63 +274,6 @@ bool swift_taskGroup_isCancelled(TaskGroup *group);
276
274
SWIFT_EXPORT_FROM (swift_Concurrency) SWIFT_CC(swift)
277
275
bool swift_taskGroup_isEmpty (TaskGroup *group);
278
276
279
- // / Its Swift signature is
280
- // /
281
- // / \code
282
- // / func swift_asyncLet_start<T>(
283
- // / _ alet: Builtin.RawPointer,
284
- // / operation: __owned @Sendable @escaping () async throws -> T
285
- // / )
286
- // / \endcode
287
- SWIFT_EXPORT_FROM (swift_Concurrency) SWIFT_CC(swift)
288
- void swift_asyncLet_start (
289
- AsyncLet *alet,
290
- const Metadata *futureResultType,
291
- void *closureEntryPoint,
292
- HeapObject * /* +1 */ closureContext);
293
-
294
- // / This matches the ABI of a closure `<T>(Builtin.RawPointer) async -> T`
295
- using AsyncLetWaitSignature =
296
- SWIFT_CC (swiftasync)
297
- void (OpaqueValue *,
298
- SWIFT_ASYNC_CONTEXT AsyncContext *, AsyncTask *, Metadata *);
299
-
300
- // / Wait for a non-throwing async-let to complete.
301
- // /
302
- // / This can be called from any thread. Its Swift signature is
303
- // /
304
- // / \code
305
- // / func swift_asyncLet_wait(
306
- // / _ asyncLet: _owned Builtin.RawPointer
307
- // / ) async -> Success
308
- // / \endcode
309
- SWIFT_EXPORT_FROM (swift_Concurrency) SWIFT_CC(swiftasync)
310
- void swift_asyncLet_wait (OpaqueValue *,
311
- SWIFT_ASYNC_CONTEXT AsyncContext *,
312
- AsyncLet *, Metadata *);
313
-
314
- // / Wait for a potentially-throwing async-let to complete.
315
- // /
316
- // / This can be called from any thread. Its Swift signature is
317
- // /
318
- // / \code
319
- // / func swift_asyncLet_wait_throwing(
320
- // / _ asyncLet: _owned Builtin.RawPointer
321
- // / ) async throws -> Success
322
- // / \endcode
323
- SWIFT_EXPORT_FROM (swift_Concurrency) SWIFT_CC(swiftasync)
324
- void swift_asyncLet_wait_throwing (OpaqueValue *,
325
- SWIFT_ASYNC_CONTEXT AsyncContext *,
326
- AsyncLet *, Metadata *);
327
-
328
- // / Its Swift signature is
329
- // /
330
- // / \code
331
- // / func swift_asyncLet_end(_ alet: Builtin.RawPointer)
332
- // / \endcode
333
- SWIFT_EXPORT_FROM (swift_Concurrency) SWIFT_CC(swift)
334
- void swift_asyncLet_end (AsyncLet *alet);
335
-
336
277
// / Add a status record to a task. The record should not be
337
278
// / modified while it is registered with a task.
338
279
// /
@@ -373,7 +314,8 @@ bool swift_task_removeStatusRecord(TaskStatusRecord *record);
373
314
// / The record must be removed with by the parent invoking
374
315
// / `swift_task_detachChild` when the child has completed.
375
316
SWIFT_EXPORT_FROM (swift_Concurrency) SWIFT_CC(swift)
376
- ChildTaskStatusRecord* swift_task_attachChild (AsyncTask *child);
317
+ ChildTaskStatusRecord*
318
+ swift_task_attachChild (AsyncTask *child);
377
319
378
320
// / Remove a child task from the parent tracking it.
379
321
SWIFT_EXPORT_FROM (swift_Concurrency) SWIFT_CC(swift)
0 commit comments