File Coverage

cpan/Sys-Syslog/const-c.inc
Criterion Covered Total %
statement 11 12 91.7
branch n/a
condition n/a
subroutine n/a
total 11 12 91.7


line stmt bran cond sub time code
1           #define PERL_constant_NOTFOUND 1
2           #define PERL_constant_NOTDEF 2
3           #define PERL_constant_ISIV 3
4           #define PERL_constant_ISNO 4
5           #define PERL_constant_ISNV 5
6           #define PERL_constant_ISPV 6
7           #define PERL_constant_ISPVN 7
8           #define PERL_constant_ISSV 8
9           #define PERL_constant_ISUNDEF 9
10           #define PERL_constant_ISUV 10
11           #define PERL_constant_ISYES 11
12            
13           #ifndef NVTYPE
14           typedef double NV; /* 5.6 and later define NVTYPE, and typedef NV to it. */
15           #endif
16           #ifndef aTHX_
17           #define aTHX_ /* 5.6 or later define this for threading support. */
18           #endif
19           #ifndef pTHX_
20           #define pTHX_ /* 5.6 or later define this for threading support. */
21           #endif
22            
23           static void
24 96         constant_add_symbol(pTHX_ HV *hash, const char *name, I32 namelen, SV *value) {
25 96         HE *he = (HE*) hv_common_key_len(hash, name, namelen, HV_FETCH_LVALUE, NULL,
26           0);
27           SV *sv;
28            
29 96         if (!he) {
30 0         Perl_croak(aTHX_ "Couldn't add key '%s' to %%Sys::Syslog::",
31           name);
32           }
33 96         sv = HeVAL(he);
34 184         if (SvOK(sv) || SvTYPE(sv) == SVt_PVGV) {
35           /* Someone has been here before us - have to make a real sub. */
36 8         newCONSTSUB(hash, name, value);
37           } else {
38 176         SvUPGRADE(sv, SVt_RV);
39 88         SvRV_set(sv, value);
40 88         SvROK_on(sv);
41 88         SvREADONLY_on(value);
42           }
43 96         }
44            
45            
46            
47           #ifndef SYMBIAN
48            
49           /* Store a hash of all symbols missing from the package. To avoid trampling on
50           the package namespace (uninvited) put each package's hash in our namespace.
51           To avoid creating lots of typeblogs and symbol tables for sub-packages, put
52           each package's hash into one hash in our namespace. */
53            
54           static HV *
55           get_missing_hash(pTHX) {
56           HV *const parent
57           = get_hv("ExtUtils::Constant::ProxySubs::Missing", GVf_MULTI);
58           /* We could make a hash of hashes directly, but this would confuse anything
59           at Perl space that looks at us, and as we're visible in Perl space,
60           best to play nice. */
61           SV *const *const ref
62           = hv_fetch(parent, "Sys::Syslog", 11, TRUE);
63           HV *new_hv;
64            
65           if (!ref)
66           return NULL;
67            
68           if (SvROK(*ref))
69           return (HV*) SvRV(*ref);
70            
71           new_hv = newHV();
72           SvUPGRADE(*ref, SVt_RV);
73           SvRV_set(*ref, (SV *)new_hv);
74           SvROK_on(*ref);
75           return new_hv;
76           }
77            
78           #endif
79            
80           struct notfound_s {const char *name; I32 namelen;} ;
81            
82           static const struct notfound_s values_for_notfound[] =
83           {
84           #ifndef LOG_ALERT
85           { "LOG_ALERT", 9 },
86           #endif
87           #ifndef LOG_CRIT
88           { "LOG_CRIT", 8 },
89           #endif
90           #ifndef LOG_DEBUG
91           { "LOG_DEBUG", 9 },
92           #endif
93           #ifndef LOG_EMERG
94           { "LOG_EMERG", 9 },
95           #endif
96           #ifndef LOG_ERR
97           { "LOG_ERR", 7 },
98           #endif
99           #ifndef LOG_INFO
100           { "LOG_INFO", 8 },
101           #endif
102           #ifndef LOG_NOTICE
103           { "LOG_NOTICE", 10 },
104           #endif
105           #ifndef LOG_WARNING
106           { "LOG_WARNING", 11 },
107           #endif
108           #ifndef LOG_AUTH
109           { "LOG_AUTH", 8 },
110           #endif
111           #ifndef LOG_AUTHPRIV
112           { "LOG_AUTHPRIV", 12 },
113           #endif
114           #ifndef LOG_CRON
115           { "LOG_CRON", 8 },
116           #endif
117           #ifndef LOG_DAEMON
118           { "LOG_DAEMON", 10 },
119           #endif
120           #ifndef LOG_FTP
121           { "LOG_FTP", 7 },
122           #endif
123           #ifndef LOG_KERN
124           { "LOG_KERN", 8 },
125           #endif
126           #ifndef LOG_LOCAL0
127           { "LOG_LOCAL0", 10 },
128           #endif
129           #ifndef LOG_LOCAL1
130           { "LOG_LOCAL1", 10 },
131           #endif
132           #ifndef LOG_LOCAL2
133           { "LOG_LOCAL2", 10 },
134           #endif
135           #ifndef LOG_LOCAL3
136           { "LOG_LOCAL3", 10 },
137           #endif
138           #ifndef LOG_LOCAL4
139           { "LOG_LOCAL4", 10 },
140           #endif
141           #ifndef LOG_LOCAL5
142           { "LOG_LOCAL5", 10 },
143           #endif
144           #ifndef LOG_LOCAL6
145           { "LOG_LOCAL6", 10 },
146           #endif
147           #ifndef LOG_LOCAL7
148           { "LOG_LOCAL7", 10 },
149           #endif
150           #ifndef LOG_LPR
151           { "LOG_LPR", 7 },
152           #endif
153           #ifndef LOG_MAIL
154           { "LOG_MAIL", 8 },
155           #endif
156           #ifndef LOG_NEWS
157           { "LOG_NEWS", 8 },
158           #endif
159           #ifndef LOG_SYSLOG
160           { "LOG_SYSLOG", 10 },
161           #endif
162           #ifndef LOG_USER
163           { "LOG_USER", 8 },
164           #endif
165           #ifndef LOG_UUCP
166           { "LOG_UUCP", 8 },
167           #endif
168           #ifndef LOG_CONS
169           { "LOG_CONS", 8 },
170           #endif
171           #ifndef LOG_PID
172           { "LOG_PID", 7 },
173           #endif
174           #ifndef LOG_NDELAY
175           { "LOG_NDELAY", 10 },
176           #endif
177           #ifndef LOG_NOWAIT
178           { "LOG_NOWAIT", 10 },
179           #endif
180           #ifndef LOG_ODELAY
181           { "LOG_ODELAY", 10 },
182           #endif
183           #ifndef LOG_PERROR
184           { "LOG_PERROR", 10 },
185           #endif
186           #ifndef LOG_FACMASK
187           { "LOG_FACMASK", 11 },
188           #endif
189           { NULL, 0 } };
190           struct iv_s {const char *name; I32 namelen; IV value;};
191           struct pv_s {const char *name; I32 namelen; const char *value;};