… | |
… | |
2422 | if (PL_op->op_flags & OPf_STACKED) |
2422 | if (PL_op->op_flags & OPf_STACKED) |
2423 | { |
2423 | { |
2424 | if (items > slf_arga) |
2424 | if (items > slf_arga) |
2425 | { |
2425 | { |
2426 | slf_arga = items; |
2426 | slf_arga = items; |
2427 | free (slf_argv); |
2427 | Safefree (slf_argv); |
2428 | slf_argv = malloc (slf_arga * sizeof (SV *)); |
2428 | New (0, slf_argv, slf_arga, SV *); |
2429 | } |
2429 | } |
2430 | |
2430 | |
2431 | slf_argc = items; |
2431 | slf_argc = items; |
2432 | |
2432 | |
2433 | for (i = 0; i < items; ++i) |
2433 | for (i = 0; i < items; ++i) |
… | |
… | |
3275 | RETVAL = boolSV (coro->flags & ix); |
3275 | RETVAL = boolSV (coro->flags & ix); |
3276 | OUTPUT: |
3276 | OUTPUT: |
3277 | RETVAL |
3277 | RETVAL |
3278 | |
3278 | |
3279 | void |
3279 | void |
3280 | throw (Coro::State self, SV *throw = &PL_sv_undef) |
3280 | throw (Coro::State self, SV *exception = &PL_sv_undef) |
3281 | PROTOTYPE: $;$ |
3281 | PROTOTYPE: $;$ |
3282 | CODE: |
3282 | CODE: |
3283 | { |
3283 | { |
3284 | struct coro *current = SvSTATE_current; |
3284 | struct coro *current = SvSTATE_current; |
3285 | SV **throwp = self == current ? &CORO_THROW : &self->except; |
3285 | SV **exceptionp = self == current ? &CORO_THROW : &self->except; |
3286 | SvREFCNT_dec (*throwp); |
3286 | SvREFCNT_dec (*exceptionp); |
3287 | SvGETMAGIC (throw); |
3287 | SvGETMAGIC (exception); |
3288 | *throwp = SvOK (throw) ? newSVsv (throw) : 0; |
3288 | *exceptionp = SvOK (exception) ? newSVsv (exception) : 0; |
3289 | } |
3289 | } |
3290 | |
3290 | |
3291 | void |
3291 | void |
3292 | api_trace (SV *coro, int flags = CC_TRACE | CC_TRACE_SUB) |
3292 | api_trace (SV *coro, int flags = CC_TRACE | CC_TRACE_SUB) |
3293 | PROTOTYPE: $;$ |
3293 | PROTOTYPE: $;$ |