Branch Coverage

XS.xs
Criterion Covered Total %
branch 86 98 87.7


line true false branch
22 0 18 if (!dest) /* malloc failed */
33 1 17 if (len == 0) {
38 135 17 while (len > 0) {
45 54 81 if (leading && !isSPACE(c))
18 36 if (leading && !isSPACE(c))
48 99 36 if (!leading) {
50 94 5 if (isEOL(c)) {
9 85 if (isEOL(c)) {
51 4 5 if (trailing) ptr = trailing;
52 5 4 if ( c == '\r' ) c = '\n'; /* Normalise EOL */
55 13 77 else if (isSPACE(c)) {
56 9 4 if (!trailing) trailing = ptr;
67 6 11 if (trailing) {
70 6 0 if (isEOL(c)) { ptr++; }
3 3 if (isEOL(c)) { ptr++; }
84 0 45 if (!dest) /* malloc failed */
95 2 43 if (len == 0) {
100 289 35 while (src < end) {
104 269 20 if (UTF8_IS_INVARIANT(c)) {
112 8 12 if (skip == (STRLEN) -1) {
121 114 167 if (leading && !isSPACE(c))
107 7 if (leading && !isSPACE(c))
34 73 if (leading && !isSPACE(c))
124 208 73 if (!leading) {
126 205 3 if (isEOL_UTF8(c)) {
187 18 if (isEOL_UTF8(c)) {
190 0 if (isEOL_UTF8(c)) {
184 6 if (isEOL_UTF8(c)) {
0 184 if (isEOL_UTF8(c)) {
127 12 12 if (trailing) ptr = trailing;
128 10 14 if ( c == '\r' ) c = '\n'; /* Normalise EOL */
131 181 3 else if (isSPACE(c)) {
28 153 else if (isSPACE(c)) {
132 16 12 if (!trailing) trailing = ptr;
138 196 12 if (UTF8_IS_INVARIANT(c))
147 12 23 if (trailing) {
151 2 10 if (!UTF8_IS_INVARIANT(c)) {
153 0 2 if (c == 0) {
157 12 0 if (isEOL_UTF8(c)) {
6 6 if (isEOL_UTF8(c)) {
6 0 if (isEOL_UTF8(c)) {
4 2 if (isEOL_UTF8(c)) {
0 4 if (isEOL_UTF8(c)) {
158 0 8 if ((int) skip <= 0) {
184 45 1 if (SvOK(inStr)) {
188 37 0 if (outStr != NULL) {
191 3 34 if (is_utf8)
213 18 1 if (SvOK(inStr)) {
217 18 0 if (outStr != NULL) {