Branch Coverage

xs/i8.xs
Criterion Covered Total %
branch 28 316 8.8


line true false branch
9 0 1 if (!buf) croak("Data::Buffer::Shared::I8: %s", errbuf[0] ? errbuf : "unknown error");
0 0 if (!buf) croak("Data::Buffer::Shared::I8: %s", errbuf[0] ? errbuf : "unknown error");
17 0 2 if (!SvROK(self_sv)) return;
19 0 2 if (!h) return;
26 3 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 3 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 3 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
28 0 3 if (!buf_i8_get(h, (uint64_t)idx, &val)) XSRETURN_UNDEF;
36 4 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 4 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 4 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
37 4 0 RETVAL = buf_i8_set(h, (uint64_t)idx, (int8_t)val);
44 0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
45 0 0 if (count == 0) XSRETURN_EMPTY;
49 0 0 if (!buf_i8_get_slice(h, (uint64_t)from, (uint64_t)count, tmp))
51 0 0 EXTEND(SP, count);
52 0 0 for (UV i = 0; i < count; i++)
58 0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
60 0 0 if (count == 0) XSRETURN(1);
64 0 0 for (UV i = 0; i < count; i++)
66 0 0 RETVAL = buf_i8_set_slice(h, (uint64_t)from, (uint64_t)count, tmp);
73 0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
79 2 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 2 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 2 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
80 0 2 if (idx >= h->hdr->capacity) croak("Data::Buffer::Shared::I8: index out of bounds");
88 2 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 2 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 2 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
89 0 2 if (idx >= h->hdr->capacity) croak("Data::Buffer::Shared::I8: index out of bounds");
97 1 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 1 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 1 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
98 0 1 if (idx >= h->hdr->capacity) croak("Data::Buffer::Shared::I8: index out of bounds");
106 1 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 1 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 1 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
107 1 0 RETVAL = buf_i8_cas(h, (uint64_t)idx, (int8_t)expected, (int8_t)desired);
114 0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
122 0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
130 0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
131 0 0 RETVAL = (UV)buf_i8_elem_size(h);
138 0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
139 0 0 if (h->path) RETVAL = newSVpv(h->path, 0); else XSRETURN_UNDEF;
146 0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
152 0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
158 0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
164 0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
171 0 0 if (SvROK(self_or_class)) {
173 0 0 if (h) { if (!h->path) croak("cannot unlink anonymous buffer"); p = h->path; }
0 0 if (h) { if (!h->path) croak("cannot unlink anonymous buffer"); p = h->path; }
176 0 0 if (items < 2) croak("Usage: Data::Buffer::Shared::I8->unlink($path)");
179 0 0 if (unlink(p) != 0) croak("unlink(%s): %s", p, strerror(errno));
184 0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
185 0 0 RETVAL = PTR2UV(buf_i8_ptr(h));
192 0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
194 0 0 if (!p) croak("Data::Buffer::Shared::I8: index out of bounds");
195 0 0 RETVAL = PTR2UV(p);
204 0 1 if (!buf) croak("Data::Buffer::Shared::I8: %s", errbuf[0] ? errbuf : "unknown error");
0 0 if (!buf) croak("Data::Buffer::Shared::I8: %s", errbuf[0] ? errbuf : "unknown error");
212 0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
218 0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
219 0 0 RETVAL = newSV(nbytes ? nbytes : 1);
222 0 0 if (nbytes) SvPVX(RETVAL)[nbytes] = '\0'; /* NUL-terminate; newSV reserved nbytes+1 */
223 0 0 if (!buf_i8_get_raw(h, (uint64_t)byte_off, (uint64_t)nbytes, SvPVX(RETVAL))) {
233 0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
236 0 0 RETVAL = buf_i8_set_raw(h, (uint64_t)byte_off, (uint64_t)dlen, dptr);
243 0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
244 0 0 if (idx >= h->hdr->capacity) croak("Data::Buffer::Shared::I8: index out of bounds");
252 0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
253 0 0 if (idx >= h->hdr->capacity) croak("Data::Buffer::Shared::I8: index out of bounds");
261 0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
262 0 0 if (idx >= h->hdr->capacity) croak("Data::Buffer::Shared::I8: index out of bounds");
270 0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
271 0 0 if (idx >= h->hdr->capacity) croak("Data::Buffer::Shared::I8: index out of bounds");
281 0 0 if (!buf) croak("Data::Buffer::Shared::I8: %s", errbuf[0] ? errbuf : "unknown error");
0 0 if (!buf) croak("Data::Buffer::Shared::I8: %s", errbuf[0] ? errbuf : "unknown error");
291 0 0 if (!buf) croak("Data::Buffer::Shared::I8: %s", errbuf[0] ? errbuf : "unknown error");
0 0 if (!buf) croak("Data::Buffer::Shared::I8: %s", errbuf[0] ? errbuf : "unknown error");
299 0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
300 0 0 if (h->fd < 0) XSRETURN_UNDEF;
308 0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
325 0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
327 0 0 if (count == 0) XSRETURN(1);
331 0 0 for (UV i = 0; i < count; i++)
333 0 0 RETVAL = buf_i8_add_slice(h, (uint64_t)from, (uint64_t)count, tmp);
340 0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
342 0 0 if (RETVAL < 0) croak("Data::Buffer::Shared::I8: eventfd: %s", strerror(errno));
349 0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
355 0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
356 0 0 if (h->efd < 0) XSRETURN_UNDEF;
364 0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
365 0 0 RETVAL = buf_notify(h);
372 0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
374 0 0 if (val < 0) XSRETURN_UNDEF;
382 0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
383 0 0 if (buf_msync(h) != 0) croak("Data::Buffer::Shared::I8 sync: %s", strerror(errno));
388 0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);
0 0 EXTRACT_BUF("Data::Buffer::Shared::I8", self_sv);