File Coverage

blib/arch/XS/Framework.pm
Criterion Covered Total %
statement 24 24 100.0
branch n/a
condition n/a
subroutine 9 9 100.0
pod n/a
total 33 33 100.0


line stmt bran cond sub pod time code
1             package XS::Framework;
2 36     36   347726 use 5.018;
  36         327  
3 36     36   205 use Config;
  36         112  
  36         1397  
4 36     36   15276 use next::XS;
  36         287002  
  36         1242  
5 36     36   15458 use XS::libpanda;
  36         58315  
  36         1123  
6 36     36   14214 use XS::ErrorCode();
  36         110  
  36         863  
7 36     36   14862 use XS::STL::ErrorCode();
  36         100  
  36         741  
8 36     36   14951 use XS::STL::ErrorCategory();
  36         101  
  36         3969  
9              
10             our $VERSION = '1.3.1';
11              
12             # threads::shared doesn't respect the fact that PL_destroyhook might be in use by other modules and doesn't proxy call to next hook
13             # so that we must hook after threads::shared
14             if ($Config{useithreads}) {
15             require threads;
16             require threads::shared;
17 36     36   241 no warnings 'redefine';
  36         91  
  36         16401  
18             my $orig_threads_create = \&threads::create;
19             *threads::create = sub {
20             __at_thread_create();
21             goto &$orig_threads_create;
22             };
23             }
24              
25             XS::Loader::load();
26              
27             END {
28 36     36   41099 __at_perl_destroy();
29             }
30              
31             1;