Commit | Line | Data |
df6dd016 |
1 | #include "mouse.h" |
2 | |
3 | MODULE = Mouse PACKAGE = Mouse::Util |
4 | |
5 | PROTOTYPES: DISABLE |
6 | |
7 | bool |
8 | is_class_loaded(SV* sv = &PL_sv_undef) |
9 | |
10 | void |
11 | get_code_info(CV* code) |
12 | PREINIT: |
13 | GV* gv; |
14 | HV* stash; |
15 | PPCODE: |
16 | if((gv = CvGV(code)) && isGV(gv) && (stash = GvSTASH(gv))){ |
17 | EXTEND(SP, 2); |
18 | mPUSHs(newSVpvn_share(HvNAME_get(stash), HvNAMELEN_get(stash), 0U)); |
19 | mPUSHs(newSVpvn_share(GvNAME_get(gv), GvNAMELEN_get(gv), 0U)); |
20 | } |
21 | |
22 | SV* |
23 | get_code_package(CV* code) |
24 | PREINIT: |
25 | HV* stash; |
26 | CODE: |
27 | if(CvGV(code) && isGV(CvGV(code)) && (stash = GvSTASH(CvGV(code)))){ |
28 | RETVAL = newSVpvn_share(HvNAME_get(stash), HvNAMELEN_get(stash), 0U); |
29 | } |
30 | else{ |
31 | RETVAL = &PL_sv_no; |
32 | } |
33 | OUTPUT: |
34 | RETVAL |
35 | |