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   325907 use 5.018;
  36         331  
3 36     36   190 use Config;
  36         85  
  36         1186  
4 36     36   15424 use next::XS;
  36         288676  
  36         1217  
5 36     36   15229 use XS::libpanda;
  36         58038  
  36         1119  
6 36     36   14418 use XS::ErrorCode();
  36         98  
  36         817  
7 36     36   14559 use XS::STL::ErrorCode();
  36         95  
  36         770  
8 36     36   14548 use XS::STL::ErrorCategory();
  36         95  
  36         2060  
9              
10             our $VERSION = '1.3.0';
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   1968 no warnings 'redefine';
  36         72  
  36         14153  
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   38233 __at_perl_destroy();
29             }
30              
31             1;