File Coverage

blib/lib/RPerl/DataStructure/Array.pm
Criterion Covered Total %
statement 65 65 100.0
branch n/a
condition n/a
subroutine 23 23 100.0
pod n/a
total 88 88 100.0


line stmt bran cond sub pod time code
1             # [[[ HEADER ]]]
2             package RPerl::DataStructure::Array;
3 9     9   56 use strict;
  9         18  
  9         221  
4 9     9   41 use warnings;
  9         21  
  9         190  
5 9     9   48 use RPerl::AfterSubclass;
  9         17  
  9         1198  
6             our $VERSION = 0.007_000;
7              
8             # [[[ OO INHERITANCE ]]]
9 9     9   60 use parent qw(RPerl::DataStructure);
  9         19  
  9         57  
10 9     9   384 use RPerl::DataStructure;
  9         18  
  9         167  
11              
12 9     9   44 use Carp;
  9         18  
  9         409  
13              
14             # [[[ SUB-TYPES BEFORE INCLUDES ]]]
15 9     9   3948 use RPerl::DataStructure::Array::SubTypes;
  9         27  
  9         751  
16              
17             # [[[ INCLUDES ]]]
18             # for type-checking via SvIOKp(), SvNOKp(), and SvPOKp(); inside INIT to delay until after 'use MyConfig'
19             #INIT { RPerl::diag("in Array.pm, loading C++ helper functions for type-checking...\n"); }
20             INIT {
21 9     9   3782 use RPerl::HelperFunctions_cpp;
  9         25  
  9         376  
22 9     9   160 RPerl::HelperFunctions_cpp::cpp_load();
23             }
24              
25 9     9   59 use RPerl::DataType::Void;
  9         20  
  9         206  
26 9     9   49 use RPerl::DataType::Boolean;
  9         20  
  9         599  
27 9     9   51 use RPerl::DataType::UnsignedInteger;
  9         20  
  9         547  
28 9     9   52 use RPerl::DataType::Integer;
  9         19  
  9         489  
29 9     9   50 use RPerl::DataType::Number;
  9         17  
  9         475  
30 9     9   50 use RPerl::DataType::Character;
  9         22  
  9         508  
31 9     9   61 use RPerl::DataType::String;
  9         17  
  9         616  
32 9     9   79 use RPerl::DataType::Scalar;
  9         23  
  9         266  
33 9     9   46 use RPerl::DataType::Unknown;
  9         17  
  9         171  
34 9     9   3366 use RPerl::DataStructure::Hash;
  9         24  
  9         1045  
35              
36             # [[[ EXPORTS ]]]
37             # DEV NOTE: avoid "Undefined subroutine &main::integer_to_string called"
38 9     9   58 use Exporter 'import';
  9         19  
  9         478  
39             our @EXPORT = ( @RPerl::DataType::Void::EXPORT,
40             @RPerl::DataType::Boolean::EXPORT,
41             @RPerl::DataType::UnsignedInteger::EXPORT,
42             @RPerl::DataType::Integer::EXPORT,
43             @RPerl::DataType::Number::EXPORT,
44             @RPerl::DataType::Character::EXPORT,
45             @RPerl::DataType::String::EXPORT,
46             @RPerl::DataType::Scalar::EXPORT,
47             @RPerl::DataType::Unknown::EXPORT,
48             @RPerl::DataStructure::Hash::EXPORT);
49              
50             # DEV NOTE, CORRELATION #rp018: RPerl::DataStructure::Array & Hash can not 'use RPerl;' so *__MODE_ID() subroutines are hard-coded here
51             package main;
52 9     9   110 use strict;
  9         20  
  9         203  
53 9     9   69 use warnings;
  9         21  
  9         402  
54 7     7   3801 sub RPerl__DataStructure__Array__MODE_ID { return 0; }
55              
56             1; # end of class