… | |
… | |
4 | #include "EXTERN.h" |
4 | #include "EXTERN.h" |
5 | #include "perl.h" |
5 | #include "perl.h" |
6 | #include "XSUB.h" |
6 | #include "XSUB.h" |
7 | |
7 | |
8 | /* perl-related */ |
8 | /* perl-related */ |
9 | #define TRANSFER_SAVE_DEFAV 0x00000001 |
9 | #define TRANSFER_SAVE_DEFAV 0x00000001 /* @_ */ |
10 | #define TRANSFER_SAVE_DEFSV 0x00000002 |
10 | #define TRANSFER_SAVE_DEFSV 0x00000002 /* $_ */ |
11 | #define TRANSFER_SAVE_ERRSV 0x00000004 |
11 | #define TRANSFER_SAVE_ERRSV 0x00000004 /* $@ */ |
|
|
12 | #define TRANSFER_SAVE_CURPM 0x00000008 /* regex results */ |
12 | /* c-related */ |
13 | /* c-related */ |
13 | #define TRANSFER_SAVE_CCTXT 0x00000008 |
14 | #define TRANSFER_SAVE_CCTXT 0x00000100 |
14 | #ifdef CORO_LAZY_STACK |
15 | #ifdef CORO_LAZY_STACK |
15 | # define TRANSFER_LAZY_STACK 0x00000010 |
16 | # define TRANSFER_LAZY_STACK 0x00000200 |
16 | #else |
17 | #else |
17 | # define TRANSFER_LAZY_STACK 0x00000000 |
18 | # define TRANSFER_LAZY_STACK 0x00000000 |
18 | #endif |
19 | #endif |
19 | |
20 | |
20 | #define TRANSFER_SAVE_ALL (TRANSFER_SAVE_DEFAV|TRANSFER_SAVE_DEFSV \ |
21 | #define TRANSFER_SAVE_ALL (TRANSFER_SAVE_DEFAV|TRANSFER_SAVE_DEFSV \ |
21 | |TRANSFER_SAVE_ERRSV|TRANSFER_SAVE_CCTXT) |
22 | |TRANSFER_SAVE_ERRSV|TRANSFER_SAVE_CURPM \ |
|
|
23 | |TRANSFER_SAVE_CCTXT) |
22 | |
24 | |
23 | struct coro; /* opaque */ |
25 | struct coro; /* opaque */ |
24 | |
26 | |
25 | struct CoroAPI { |
27 | struct CoroAPI { |
26 | I32 ver; |
28 | I32 ver; |