@@ -88,13 +88,12 @@ extern transfer_t jump_fcontext(fcontext_t to, void *vp);
88
88
89
89
90
90
91
- ZEND_API void zend_observer_fiber_switch_register (zend_observer_fiber_switch_handler handler ) /* {{{ */
91
+ ZEND_API void zend_observer_fiber_switch_register (zend_observer_fiber_switch_handler handler )
92
92
{
93
93
zend_llist_add_element (& zend_fiber_observers_list , & handler );
94
94
}
95
- /* }}} */
96
95
97
- static zend_always_inline void zend_observer_fiber_switch_notify (zend_fiber * from , zend_fiber * to ) /* {{{ */
96
+ static zend_always_inline void zend_observer_fiber_switch_notify (zend_fiber * from , zend_fiber * to )
98
97
{
99
98
zend_llist_element * element ;
100
99
zend_observer_fiber_switch_handler callback ;
@@ -104,7 +103,6 @@ static zend_always_inline void zend_observer_fiber_switch_notify(zend_fiber *fro
104
103
callback (from , to );
105
104
}
106
105
}
107
- /* }}} */
108
106
109
107
static size_t zend_fiber_page_size ()
110
108
{
@@ -121,7 +119,7 @@ static size_t zend_fiber_page_size()
121
119
#endif
122
120
}
123
121
124
- static bool zend_fiber_stack_allocate (zend_fiber_stack * stack , size_t size ) /* {{{ */
122
+ static bool zend_fiber_stack_allocate (zend_fiber_stack * stack , size_t size )
125
123
{
126
124
void * pointer ;
127
125
const size_t page_size = zend_fiber_page_size ();
@@ -170,9 +168,8 @@ static bool zend_fiber_stack_allocate(zend_fiber_stack *stack, size_t size) /* {
170
168
171
169
return true;
172
170
}
173
- /* }}} */
174
171
175
- void zend_fiber_stack_free (zend_fiber_stack * stack ) /* {{{ */
172
+ void zend_fiber_stack_free (zend_fiber_stack * stack )
176
173
{
177
174
if (!stack -> pointer ) {
178
175
return ;
@@ -194,9 +191,8 @@ void zend_fiber_stack_free(zend_fiber_stack *stack) /* {{{ */
194
191
195
192
stack -> pointer = NULL ;
196
193
}
197
- /* }}} */
198
194
199
- static ZEND_NORETURN void zend_fiber_trampoline (transfer_t transfer ) /* {{{ */
195
+ static ZEND_NORETURN void zend_fiber_trampoline (transfer_t transfer )
200
196
{
201
197
zend_fiber_context * context = transfer .data ;
202
198
@@ -210,9 +206,8 @@ static ZEND_NORETURN void zend_fiber_trampoline(transfer_t transfer) /* {{{ */
210
206
211
207
abort ();
212
208
}
213
- /* }}} */
214
209
215
- ZEND_API bool zend_fiber_init_context (zend_fiber_context * context , zend_fiber_coroutine coroutine , size_t stack_size ) /* {{{ */
210
+ ZEND_API bool zend_fiber_init_context (zend_fiber_context * context , zend_fiber_coroutine coroutine , size_t stack_size )
216
211
{
217
212
if (UNEXPECTED (!zend_fiber_stack_allocate (& context -> stack , stack_size ))) {
218
213
return false;
@@ -233,35 +228,31 @@ ZEND_API bool zend_fiber_init_context(zend_fiber_context *context, zend_fiber_co
233
228
234
229
return true;
235
230
}
236
- /* }}} */
237
231
238
- ZEND_API void zend_fiber_destroy_context (zend_fiber_context * context ) /* {{{ */
232
+ ZEND_API void zend_fiber_destroy_context (zend_fiber_context * context )
239
233
{
240
234
zend_fiber_stack_free (& context -> stack );
241
235
}
242
- /* }}} */
243
236
244
- ZEND_API void zend_fiber_switch_context (zend_fiber_context * to ) /* {{{ */
237
+ ZEND_API void zend_fiber_switch_context (zend_fiber_context * to )
245
238
{
246
239
ZEND_ASSERT (to && to -> self && to -> stack .pointer && "Invalid fiber context" );
247
240
248
241
transfer_t transfer = jump_fcontext (to -> self , to );
249
242
250
243
to -> self = transfer .context ;
251
244
}
252
- /* }}} */
253
245
254
- ZEND_API void zend_fiber_suspend_context (zend_fiber_context * current ) /* {{{ */
246
+ ZEND_API void zend_fiber_suspend_context (zend_fiber_context * current )
255
247
{
256
248
ZEND_ASSERT (current && current -> caller && current -> stack .pointer && "Invalid fiber context" );
257
249
258
250
transfer_t transfer = jump_fcontext (current -> caller , NULL );
259
251
260
252
current -> caller = transfer .context ;
261
253
}
262
- /* }}} */
263
254
264
- static void zend_fiber_suspend (zend_fiber * fiber ) /* {{{ */
255
+ static void zend_fiber_suspend (zend_fiber * fiber )
265
256
{
266
257
zend_vm_stack stack ;
267
258
size_t stack_page_size ;
@@ -275,9 +266,8 @@ static void zend_fiber_suspend(zend_fiber *fiber) /* {{{ */
275
266
276
267
ZEND_FIBER_RESTORE_EG (stack , stack_page_size , execute_data , error_reporting , jit_trace_num );
277
268
}
278
- /* }}} */
279
269
280
- static void zend_fiber_switch_to (zend_fiber * fiber ) /* {{{ */
270
+ static void zend_fiber_switch_to (zend_fiber * fiber )
281
271
{
282
272
zend_fiber * previous ;
283
273
zend_vm_stack stack ;
@@ -312,9 +302,7 @@ static void zend_fiber_switch_to(zend_fiber *fiber) /* {{{ */
312
302
zend_error_zstr_at (error -> type , error -> filename , error -> lineno , error -> message );
313
303
}
314
304
}
315
- /* }}} */
316
305
317
- /* {{{ */
318
306
ZEND_COLD void zend_error_suspend_fiber (
319
307
int orig_type , const char * error_filename , uint32_t error_lineno , zend_string * message )
320
308
{
@@ -333,9 +321,8 @@ ZEND_COLD void zend_error_suspend_fiber(
333
321
334
322
abort (); // This fiber should never be resumed.
335
323
}
336
- /* }}} */
337
324
338
- static zend_always_inline zend_vm_stack zend_fiber_vm_stack_alloc (size_t size ) /* {{{ */
325
+ static zend_always_inline zend_vm_stack zend_fiber_vm_stack_alloc (size_t size )
339
326
{
340
327
zend_vm_stack page = emalloc (size );
341
328
@@ -345,9 +332,8 @@ static zend_always_inline zend_vm_stack zend_fiber_vm_stack_alloc(size_t size) /
345
332
346
333
return page ;
347
334
}
348
- /* }}} */
349
335
350
- static void ZEND_STACK_ALIGNED zend_fiber_execute (zend_fiber_context * context ) /* {{{ */
336
+ static void ZEND_STACK_ALIGNED zend_fiber_execute (zend_fiber_context * context )
351
337
{
352
338
zend_fiber * fiber = EG (current_fiber );
353
339
ZEND_ASSERT (fiber );
@@ -398,9 +384,8 @@ static void ZEND_STACK_ALIGNED zend_fiber_execute(zend_fiber_context *context) /
398
384
// Remove reference added at last resume.
399
385
GC_DELREF (& fiber -> std );
400
386
}
401
- /* }}} */
402
387
403
- static zend_object * zend_fiber_object_create (zend_class_entry * ce ) /* {{{ */
388
+ static zend_object * zend_fiber_object_create (zend_class_entry * ce )
404
389
{
405
390
zend_fiber * fiber ;
406
391
@@ -414,9 +399,8 @@ static zend_object *zend_fiber_object_create(zend_class_entry *ce) /* {{{ */
414
399
415
400
return & fiber -> std ;
416
401
}
417
- /* }}} */
418
402
419
- static void zend_fiber_object_destroy (zend_object * object ) /* {{{ */
403
+ static void zend_fiber_object_destroy (zend_object * object )
420
404
{
421
405
zend_fiber * fiber = (zend_fiber * ) object ;
422
406
@@ -441,9 +425,8 @@ static void zend_fiber_object_destroy(zend_object *object) /* {{{ */
441
425
442
426
zend_object_std_dtor (& fiber -> std );
443
427
}
444
- /* }}} */
445
428
446
- void zend_fiber_cleanup (void ) /* {{{ */
429
+ void zend_fiber_cleanup (void )
447
430
{
448
431
zend_fiber * fiber ;
449
432
zend_object * exception = EG (exception );
@@ -459,9 +442,7 @@ void zend_fiber_cleanup(void) /* {{{ */
459
442
460
443
EG (exception ) = exception ;
461
444
}
462
- /* }}} */
463
445
464
- /* {{{ proto Fiber::__construct(callable $callback) */
465
446
ZEND_METHOD (Fiber , __construct )
466
447
{
467
448
zend_fiber * fiber = (zend_fiber * ) Z_OBJ_P (getThis ());
@@ -473,9 +454,7 @@ ZEND_METHOD(Fiber, __construct)
473
454
// Keep a reference to closures or callable objects until the fiber is started.
474
455
Z_TRY_ADDREF (fiber -> fci .function_name );
475
456
}
476
- /* }}} */
477
457
478
- /* {{{ proto mixed Fiber::start(mixed ...$args) */
479
458
ZEND_METHOD (Fiber , start )
480
459
{
481
460
zend_fiber * fiber = (zend_fiber * ) Z_OBJ_P (getThis ());
@@ -514,9 +493,7 @@ ZEND_METHOD(Fiber, start)
514
493
RETVAL_COPY_VALUE (& fiber -> value );
515
494
ZVAL_UNDEF (& fiber -> value );
516
495
}
517
- /* }}} */
518
496
519
- /* {{{ proto mixed Fiber::suspend(mixed $value) */
520
497
ZEND_METHOD (Fiber , suspend )
521
498
{
522
499
zend_fiber * fiber = EG (current_fiber );
@@ -576,9 +553,7 @@ ZEND_METHOD(Fiber, suspend)
576
553
RETVAL_COPY_VALUE (& fiber -> value );
577
554
ZVAL_UNDEF (& fiber -> value );
578
555
}
579
- /* }}} */
580
556
581
- /* {{{ proto mixed Fiber::resume(mixed $value = null) */
582
557
ZEND_METHOD (Fiber , resume )
583
558
{
584
559
zend_fiber * fiber ;
@@ -613,9 +588,7 @@ ZEND_METHOD(Fiber, resume)
613
588
RETVAL_COPY_VALUE (& fiber -> value );
614
589
ZVAL_UNDEF (& fiber -> value );
615
590
}
616
- /* }}} */
617
591
618
- /* {{{ proto mixed Fiber::throw(Throwable $exception) */
619
592
ZEND_METHOD (Fiber , throw )
620
593
{
621
594
zend_fiber * fiber ;
@@ -646,9 +619,7 @@ ZEND_METHOD(Fiber, throw)
646
619
RETVAL_COPY_VALUE (& fiber -> value );
647
620
ZVAL_UNDEF (& fiber -> value );
648
621
}
649
- /* }}} */
650
622
651
- /* {{{ proto bool Fiber::isStarted() */
652
623
ZEND_METHOD (Fiber , isStarted )
653
624
{
654
625
zend_fiber * fiber ;
@@ -659,9 +630,7 @@ ZEND_METHOD(Fiber, isStarted)
659
630
660
631
RETURN_BOOL (fiber -> status != ZEND_FIBER_STATUS_INIT );
661
632
}
662
- /* }}} */
663
633
664
- /* {{{ proto bool Fiber::isSuspended() */
665
634
ZEND_METHOD (Fiber , isSuspended )
666
635
{
667
636
zend_fiber * fiber ;
@@ -672,9 +641,7 @@ ZEND_METHOD(Fiber, isSuspended)
672
641
673
642
RETURN_BOOL (fiber -> status == ZEND_FIBER_STATUS_SUSPENDED );
674
643
}
675
- /* }}} */
676
644
677
- /* {{{ proto bool Fiber::isRunning() */
678
645
ZEND_METHOD (Fiber , isRunning )
679
646
{
680
647
zend_fiber * fiber ;
@@ -685,9 +652,7 @@ ZEND_METHOD(Fiber, isRunning)
685
652
686
653
RETURN_BOOL (fiber -> status == ZEND_FIBER_STATUS_RUNNING );
687
654
}
688
- /* }}} */
689
655
690
- /* {{{ proto bool Fiber::isTerminated() */
691
656
ZEND_METHOD (Fiber , isTerminated )
692
657
{
693
658
zend_fiber * fiber ;
@@ -698,9 +663,7 @@ ZEND_METHOD(Fiber, isTerminated)
698
663
699
664
RETURN_BOOL (fiber -> status & ZEND_FIBER_STATUS_FINISHED );
700
665
}
701
- /* }}} */
702
666
703
- /* {{{ proto mixed Fiber::getReturn() */
704
667
ZEND_METHOD (Fiber , getReturn )
705
668
{
706
669
zend_fiber * fiber ;
@@ -726,9 +689,7 @@ ZEND_METHOD(Fiber, getReturn)
726
689
727
690
RETURN_COPY (& fiber -> value );
728
691
}
729
- /* }}} */
730
692
731
- /* {{{ proto Fiber|null Fiber::this() */
732
693
ZEND_METHOD (Fiber , this )
733
694
{
734
695
zend_fiber * fiber ;
@@ -743,9 +704,7 @@ ZEND_METHOD(Fiber, this)
743
704
744
705
RETURN_OBJ_COPY (& fiber -> std );
745
706
}
746
- /* }}} */
747
707
748
- /* {{{ proto FiberError::__construct(string $message) */
749
708
ZEND_METHOD (FiberError , __construct )
750
709
{
751
710
zend_throw_error (
@@ -754,7 +713,6 @@ ZEND_METHOD(FiberError, __construct)
754
713
ZSTR_VAL (Z_OBJCE_P (getThis ())-> name )
755
714
);
756
715
}
757
- /* }}} */
758
716
759
717
760
718
void zend_register_fiber_ce (void )
0 commit comments