File Coverage

blib/lib/MassSpec/CUtilities.pm
Criterion Covered Total %
statement 18 29 62.0
branch 0 4 0.0
condition n/a
subroutine 6 8 75.0
pod n/a
total 24 41 58.5


line stmt bran cond sub pod time code
1             package MassSpec::CUtilities;
2            
3 1     1   18284484 use 5.008;
  1         4  
  1         69  
4 1     1   6 use strict;
  1         3  
  1         34  
5 1     1   6 use warnings;
  1         5  
  1         355  
6 1     1   6 use Carp;
  1         1  
  1         131  
7            
8             require Exporter;
9 1     1   340164 use AutoLoader;
  1         418586  
  1         10  
10            
11             our @ISA = qw(Exporter);
12            
13             # Items to export into callers namespace by default. Note: do not export
14             # names by default without a very good reason. Use EXPORT_OK instead.
15             # Do not simply export all your public functions/methods/constants.
16            
17             # This allows declaration use MassSpec::CUtilities ':all';
18             # If you do not need this, moving things directly into @EXPORT or @EXPORT_OK
19             # will save memory.
20             our %EXPORT_TAGS = ( 'all' => [ qw(
21            
22             ) ] );
23            
24             our @EXPORT_OK = ( @{ $EXPORT_TAGS{'all'} } );
25            
26             our @EXPORT = qw(
27            
28             );
29            
30             our $VERSION = '0.05';
31            
32             sub AUTOLOAD {
33             # This AUTOLOAD is used to 'autoload' constants from the constant()
34             # XS function.
35            
36 0     0     my $constname;
37 0           our $AUTOLOAD;
38 0           ($constname = $AUTOLOAD) =~ s/.*:://;
39 0 0         croak "&MassSpec::CUtilities::constant not defined" if $constname eq 'constant';
40 0           my ($error, $val) = constant($constname);
41 0 0         if ($error) { croak $error; }
  0            
42             {
43 1     1   620 no strict 'refs';
  1         5  
  1         180  
  0            
44             # Fixed between 5.005_53 and 5.005_61
45             #XXX if ($] >= 5.00561) {
46             #XXX *$AUTOLOAD = sub () { $val };
47             #XXX }
48             #XXX else {
49 0     0     *$AUTOLOAD = sub { $val };
  0            
50             #XXX }
51             }
52 0           goto &$AUTOLOAD;
53             }
54            
55             require XSLoader;
56             XSLoader::load('MassSpec::CUtilities', $VERSION);
57            
58             # Preloaded methods go here.
59            
60             # Autoload methods go after =cut, and are processed by the autosplit program.
61            
62             1;
63             __END__