Devel-CCov
view release on metacpan or search on metacpan
PREINIT:
STRLEN length;
STRLEN targlen, relen;
char *base_str;
char *targ_str;
int st_start, st_pos;
int pos = 0;
int state = 'r';
int line = 1;
int plevel = 0;
PPCODE:
base_str = SvPV(in_str, length);
if (length == 0) croak("cc_exprstr: length=0");
targ_str = SvPV(in_target, targlen);
relen = myrelen(targ_str, targlen);
while (pos < length) {
char at = base_str[pos];
char at2 = pos+1 < length? base_str[pos+1] : ' ';
char old_st = state;
if (at == '\n') ++line;
switch (state) {
SV *in_target
PREINIT:
STRLEN length;
STRLEN targlen, relen;
char *base_str;
char *targ_str;
int st_start, st_pos;
int pos = 0;
int state = 'r';
int line = 1;
PPCODE:
base_str = SvPV(in_str, length);
if (length == 0) croak("cc_strstr: length=0");
targ_str = SvPV(in_target, targlen);
relen = myrelen(targ_str, targlen);
while (pos < length) {
char at = base_str[pos];
char at2 = pos+1 < length? base_str[pos+1] : ' ';
char old_st = state;
if (at == '\n') ++line;
switch (state) {
PREINIT:
STRLEN length;
char *base_str;
int line;
int pos;
int opens,closes;
int st_start;
int st_pos;
char state;
char paren2;
PPCODE:
/*warn("---BEGIN codeblock\n");/**/
if (!(paren1 == '(' || paren1 == '{'))
croak("extract_balanced: only works on () and {}");
paren2 = paren1 == '('? ')' : '}';
base_str = SvPV(in_str, length);
line = 1;
pos = 0;
opens = closes = 0;
state = 'r';
if (base_str[0] != paren1)
( run in 1.011 second using v1.01-cache-2.11-cpan-71847e10f99 )