File Coverage

lib/PDL/Stats/GLM.xs
Criterion Covered Total %
statement 43 46 93.4
branch 149 374 39.8
condition n/a
subroutine n/a
pod n/a
total 192 420 45.7


line stmt bran cond sub pod time code
1              
2             #line 453 "lib/PDL/PP.pm"
3             /*
4             * THIS FILE WAS GENERATED BY PDL::PP from lib/PDL/Stats/GLM.pd! Do not modify!
5             */
6              
7             #define PDL_FREE_CODE(trans, destroy, comp_free_code, ntpriv_free_code) \
8             if (destroy) { \
9             comp_free_code \
10             } \
11             if ((trans)->dims_redone) { \
12             ntpriv_free_code \
13             }
14              
15             #include "EXTERN.h"
16             #include "perl.h"
17             #include "XSUB.h"
18             #include "pdl.h"
19             #include "pdlcore.h"
20             #define PDL PDL_Stats_GLM
21             extern Core* PDL; /* Structure hold core C functions */
22             #line 23 "lib/PDL/Stats/GLM.xs"
23              
24             #include
25             #include
26             #include
27              
28             pdl_error pdl_run_fill_m(pdl *a,pdl *b);
29             pdl_error pdl_run_fill_rand(pdl *a,pdl *b);
30             pdl_error pdl_run_dev_m(pdl *a,pdl *b);
31             pdl_error pdl_run_stddz(pdl *a,pdl *b);
32             pdl_error pdl_run_sse(pdl *a,pdl *b,pdl *c);
33             pdl_error pdl_run_mse(pdl *a,pdl *b,pdl *c);
34             pdl_error pdl_run_rmse(pdl *a,pdl *b,pdl *c);
35             pdl_error pdl_run_pred_logistic(pdl *a,pdl *b,pdl *c);
36             pdl_error pdl_run_d0(pdl *a,pdl *c);
37             pdl_error pdl_run_dm(pdl *a,pdl *b,pdl *c);
38             pdl_error pdl_run_dvrs(pdl *a,pdl *b,pdl *c);
39              
40             #line 449 "lib/PDL/PP.pm"
41             #include "pdlperl.h"
42             #line 43 "lib/PDL/Stats/GLM.xs"
43              
44             Core* PDL = NULL; /* Structure hold core C functions */
45              
46             MODULE = PDL::Stats::GLM PACKAGE = PDL PREFIX=pdl_run_
47              
48             PROTOTYPES: DISABLE
49              
50              
51             void
52             pdl_run_fill_m(a, b=b)
53             SV *b_SV = items > 1 ? ST(1) : NULL;
54             PREINIT:
55 2 50         PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
    50          
    0          
    50          
    50          
    50          
    50          
    0          
    50          
    50          
56             INPUT:
57             pdl *a
58             pdl *b=NO_INIT
59             PPCODE:
60 2 50         PDL_XS_INPLACE(a, b)
    0          
    50          
    50          
61 2           PDL->barf_if_error(pdl_run_fill_m(a,b));
62 2 50         PDL_XS_RETURN(ST(0) = b_SV)
    50          
    50          
    50          
    0          
63              
64             void
65             pdl_run_fill_rand(a, b=b)
66             SV *b_SV = items > 1 ? ST(1) : NULL;
67             PREINIT:
68 1 50         PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
    50          
    0          
    50          
    50          
    50          
    50          
    0          
    50          
    50          
69             INPUT:
70             pdl *a
71             pdl *b=NO_INIT
72             PPCODE:
73 1 50         PDL_XS_INPLACE(a, b)
    0          
    50          
    50          
74 1           PDL->barf_if_error(pdl_run_fill_rand(a,b));
75 1 50         PDL_XS_RETURN(ST(0) = b_SV)
    50          
    50          
    50          
    0          
76              
77             void
78             pdl_run_dev_m(a, b=b)
79             SV *b_SV = items > 1 ? ST(1) : NULL;
80             PREINIT:
81 3 50         PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
    50          
    0          
    50          
    50          
    50          
    50          
    0          
    50          
    50          
82             INPUT:
83             pdl *a
84             pdl *b=NO_INIT
85             PPCODE:
86 3 50         PDL_XS_INPLACE(a, b)
    0          
    50          
    50          
87 3           PDL->barf_if_error(pdl_run_dev_m(a,b));
88 3 50         PDL_XS_RETURN(ST(0) = b_SV)
    50          
    50          
    50          
    0          
89              
90             void
91             pdl_run_stddz(a, b=b)
92             SV *b_SV = items > 1 ? ST(1) : NULL;
93             PREINIT:
94 3 50         PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
    50          
    0          
    50          
    50          
    50          
    50          
    0          
    50          
    50          
95             INPUT:
96             pdl *a
97             pdl *b=NO_INIT
98             PPCODE:
99 3 50         PDL_XS_INPLACE(a, b)
    0          
    50          
    50          
100 3           PDL->barf_if_error(pdl_run_stddz(a,b));
101 3 50         PDL_XS_RETURN(ST(0) = b_SV)
    50          
    50          
    50          
    0          
102              
103             void
104             pdl_run_sse(a, b, c=PDL_XS_PERLINIT_initsv(c_SV))
105             SV *c_SV = items > 2 ? ST(2) : NULL;
106             PREINIT:
107 143 50         PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
    50          
    0          
    50          
    50          
    50          
    50          
    0          
    50          
    50          
108             INPUT:
109             pdl *a
110             pdl *b
111             pdl *c
112             PPCODE:
113 143           PDL->barf_if_error(pdl_run_sse(a,b,c));
114 143 50         PDL_XS_RETURN(ST(0) = c_SV)
    50          
    50          
    50          
    0          
115              
116             void
117             pdl_run_mse(a, b, c=PDL_XS_PERLINIT_initsv(c_SV))
118             SV *c_SV = items > 2 ? ST(2) : NULL;
119             PREINIT:
120 2 50         PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
    50          
    0          
    50          
    50          
    50          
    50          
    0          
    50          
    50          
121             INPUT:
122             pdl *a
123             pdl *b
124             pdl *c
125             PPCODE:
126 2           PDL->barf_if_error(pdl_run_mse(a,b,c));
127 2 50         PDL_XS_RETURN(ST(0) = c_SV)
    50          
    50          
    50          
    0          
128              
129             void
130             pdl_run_rmse(a, b, c=PDL_XS_PERLINIT_initsv(c_SV))
131             SV *c_SV = items > 2 ? ST(2) : NULL;
132             PREINIT:
133 2 50         PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
    50          
    0          
    50          
    50          
    50          
    50          
    0          
    50          
    50          
134             INPUT:
135             pdl *a
136             pdl *b
137             pdl *c
138             PPCODE:
139 2           PDL->barf_if_error(pdl_run_rmse(a,b,c));
140 2 50         PDL_XS_RETURN(ST(0) = c_SV)
    50          
    50          
    50          
    0          
141              
142             void
143             pdl_run_pred_logistic(a, b, c=PDL_XS_PERLINIT_initsv(c_SV))
144             SV *c_SV = items > 2 ? ST(2) : NULL;
145             PREINIT:
146 2 50         PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
    50          
    0          
    50          
    50          
    50          
    50          
    0          
    50          
    50          
147             INPUT:
148             pdl *a
149             pdl *b
150             pdl *c
151             PPCODE:
152 2           PDL->barf_if_error(pdl_run_pred_logistic(a,b,c));
153 2 50         PDL_XS_RETURN(ST(0) = c_SV)
    50          
    50          
    50          
    0          
154              
155             void
156             pdl_run_d0(a, c=PDL_XS_PERLINIT_initsv(c_SV))
157             SV *c_SV = items > 1 ? ST(1) : NULL;
158             PREINIT:
159 2 50         PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
    50          
    0          
    50          
    50          
    50          
    50          
    0          
    50          
    50          
160             INPUT:
161             pdl *a
162             pdl *c
163             PPCODE:
164 2           PDL->barf_if_error(pdl_run_d0(a,c));
165 2 50         PDL_XS_RETURN(ST(0) = c_SV)
    50          
    50          
    50          
    0          
166              
167             void
168             pdl_run_dm(a, b, c=PDL_XS_PERLINIT_initsv(c_SV))
169             SV *c_SV = items > 2 ? ST(2) : NULL;
170             PREINIT:
171 2 50         PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
    50          
    0          
    50          
    50          
    50          
    50          
    0          
    50          
    50          
172             INPUT:
173             pdl *a
174             pdl *b
175             pdl *c
176             PPCODE:
177 2           PDL->barf_if_error(pdl_run_dm(a,b,c));
178 2 50         PDL_XS_RETURN(ST(0) = c_SV)
    50          
    50          
    50          
    0          
179              
180             void
181             pdl_run_dvrs(a, b, c=PDL_XS_PERLINIT_initsv(c_SV))
182             SV *c_SV = items > 2 ? ST(2) : NULL;
183             PREINIT:
184 2 50         PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
    50          
    0          
    50          
    50          
    50          
    50          
    0          
    50          
    50          
185             INPUT:
186             pdl *a
187             pdl *b
188             pdl *c
189             PPCODE:
190 2           PDL->barf_if_error(pdl_run_dvrs(a,b,c));
191 2 50         PDL_XS_RETURN(ST(0) = c_SV)
    50          
    50          
    50          
    0          
192              
193              
194             #line 483 "lib/PDL/PP.pm"
195             BOOT:
196             /* Get pointer to structure of core shared C routines */
197             /* make sure PDL::Core is loaded */
198             #line 199 "lib/PDL/Stats/GLM.xs"
199 1           perl_require_pv ("PDL/Core.pm"); /* make sure PDL::Core is loaded */
200             #ifndef aTHX_
201             #define aTHX_
202             #endif
203 1 50         if (SvTRUE (ERRSV)) Perl_croak(aTHX_ "%s",SvPV_nolen (ERRSV));
    50          
    0          
204 1           SV* CoreSV = perl_get_sv("PDL::SHARE",FALSE); /* var with core structure */
205 1 50         if (!CoreSV)
206 0           Perl_croak(aTHX_ "We require the PDL::Core module, which was not found");
207 1 50         if (!(PDL = INT2PTR(Core*,SvIV( CoreSV )))) /* Core* value */
208 0           Perl_croak(aTHX_ "Got NULL pointer for PDL");
209 1 50         if (PDL->Version != PDL_CORE_VERSION)
210 0           Perl_croak(aTHX_ "[PDL->Version: %ld PDL_CORE_VERSION: %ld XS_VERSION: %s] PDL::Stats::GLM needs to be recompiled against the newly installed PDL", (long int)PDL->Version, (long int)PDL_CORE_VERSION, XS_VERSION);