obj = newSV(0);
SvREFCNT_inc_simple_void_NN(obj);
Newxz(re, 1, struct replug);
- sv_setref_pv(obj, "re::engine::Plugin", (void *) re);
+ sv_setref_pv(obj, XSH_PACKAGE, (void *) re);
newREGEXP(RX);
rx = rxREGEXP(RX);
{
PERL_UNUSED_ARG(RX);
- return newSVpvs("re::engine::Plugin");
+ return newSVpvs(XSH_PACKAGE);
}
static void xsh_user_global_setup(pTHX) {
pattern(re::engine::Plugin self, ...)
PPCODE:
XPUSHs(self->pattern);
+ XSRETURN(1);
void
str(re::engine::Plugin self, ...)
PPCODE:
XPUSHs(self->str);
+ XSRETURN(1);
void
mod(re::engine::Plugin self)
XSRETURN_EMPTY;
} else {
XPUSHs(self->stash);
+ XSRETURN(1);
}
void
} else {
XPUSHs(sv_2mortal(&PL_sv_undef));
}
+ XSRETURN(1);
}
void
} else {
XPUSHs(sv_2mortal(&PL_sv_undef));
}
+ XSRETURN(1);
}
void
} else {
XPUSHs(sv_2mortal(&PL_sv_undef));
}
+ XSRETURN(1);
}
void
self->cb_exec = ST(1);
SvREFCNT_inc_simple_void(self->cb_exec);
}
+ XSRETURN(0);
void
_num_capture_buff_FETCH(re::engine::Plugin self, ...)
self->cb_num_capture_buff_FETCH = ST(1);
SvREFCNT_inc_simple_void(self->cb_num_capture_buff_FETCH);
}
+ XSRETURN(0);
void
_num_capture_buff_STORE(re::engine::Plugin self, ...)
self->cb_num_capture_buff_STORE = ST(1);
SvREFCNT_inc_simple_void(self->cb_num_capture_buff_STORE);
}
+ XSRETURN(0);
void
_num_capture_buff_LENGTH(re::engine::Plugin self, ...)
self->cb_num_capture_buff_LENGTH = ST(1);
SvREFCNT_inc_simple_void(self->cb_num_capture_buff_LENGTH);
}
+ XSRETURN(0);
SV *
_tag(SV *comp, SV *exec)
ENGINE()
PPCODE:
XPUSHs(sv_2mortal(newSViv(PTR2IV(&engine_plugin))));
+ XSRETURN(1);