For future consistency.
}
}
-void reh_call_comp_hook(pTHX_ regexp *rx, regnode *node) {
- REH_PRIVATE_MAP_FOREACH(cbs->comp(aTHX_ rx, node));
+void reh_call_comp_node_hook(pTHX_ regexp *rx, regnode *node) {
+ REH_PRIVATE_MAP_FOREACH(cbs->comp_node(aTHX_ rx, node));
}
-void reh_call_exec_hook(pTHX_ regexp *rx, regnode *node, regmatch_info *reginfo, regmatch_state *st) {
- REH_PRIVATE_MAP_FOREACH(cbs->exec(aTHX_ rx, node, reginfo, st));
+void reh_call_exec_node_hook(pTHX_ regexp *rx, regnode *node, regmatch_info *reginfo, regmatch_state *st) {
+ REH_PRIVATE_MAP_FOREACH(cbs->exec_node(aTHX_ rx, node, reginfo, st));
}
void reh_re_free(pTHX_ REGEXP * const RX) {
#include "re_engine_hooks.h"
- STATIC void dri_comp_hook(pTHX_ regexp *rx, regnode *node) {
+ STATIC void dri_comp_node_hook(pTHX_ regexp *rx, regnode *node) {
...
}
BOOT:
{
reh_config cfg;
- cfg.comp = dri_comp_hook;
- cfg.exec = dri_exec_hook;
+ cfg.comp_node = dri_comp_node_hook;
+ cfg.exec_node = dri_exec_node_hook;
reh_register("Devel::Regexp::Instrument", &cfg);
}
The C API is made available through the F<re_engine_hooks.h> header file.
-=head2 C<reh_comp_hook>
+=head2 C<reh_comp_node_hook>
-The typedef for the regexp compilation phase hook.
+The typedef for the regexp node compilation phase hook.
Currently evaluates to :
- typedef void (*reh_comp_hook)(pTHX_ regexp *, regnode *);
+ typedef void (*reh_comp_node_hook)(pTHX_ regexp *, regnode *);
=head2 C<reh_exec_hook>
-The typedef for the regexp execution phase hook.
+The typedef for the regexp node_execution phase hook.
Currently evaluates to :
- typedef void (*reh_exec_hook)(pTHX_ regexp *, regnode *, regmatch_info *, regmatch_state *);
+ typedef void (*reh_exec_node_hook)(pTHX_ regexp *, regnode *, regmatch_info *, regmatch_state *);
=head2 C<reh_config>
=item *
-C<comp>
+C<comp_node>
-A function pointer of type C<reh_comp_hook> that will be called each time a regnode is compiled.
+A function pointer of type C<reh_comp_node_hook> that will be called each time a regnode is compiled.
Allowed to be C<NULL> if you don't want to call anything for this phase.
=item *
-C<exec>
+C<exec_node>
-A function pointer of type C<reh_exec_hook> that will be called each time a regnode is executed.
+A function pointer of type C<reh_exec_node_hook> that will be called each time a regnode is executed.
Allowed to be C<NULL> if you don't want to call anything for this phase.
=back
EXTERN_C void reh_call_comp_hook(pTHX_ regexp *, regnode *);
EXTERN_C void reh_call_exec_hook(pTHX_ regexp *, regnode *, regmatch_info *, regmatch_state *);
-#define REH_CALL_COMP_BEGIN_HOOK(a) reh_call_comp_begin_hook(aTHX_ (a))
-#define REH_CALL_REGCOMP_HOOK(a, b) reh_call_comp_hook(aTHX_ (a), (b))
-#define REH_CALL_REGEXEC_HOOK(a, b, c, d) reh_call_exec_hook(aTHX_ (a), (b), (c), (d))
+#define REH_CALL_COMP_BEGIN_HOOK(a) reh_call_comp_begin_hook(aTHX_ (a))
+#define REH_CALL_COMP_NODE_HOOK(a, b) reh_call_comp_node_hook(aTHX_ (a), (b))
+#define REH_CALL_EXEC_NODE_HOOK(a, b, c, d) reh_call_exec_node_hook(aTHX_ (a), (b), (c), (d))
#ifndef RE_ENGINE_HOOKS_H
#define RE_ENGINE_HOOKS_H 1
-typedef void (*reh_comp_hook)(pTHX_ regexp *, regnode *);
-typedef void (*reh_exec_hook)(pTHX_ regexp *, regnode *, regmatch_info *, regmatch_state *);
+typedef void (*reh_comp_node_hook)(pTHX_ regexp *, regnode *);
+typedef void (*reh_exec_node_hook)(pTHX_ regexp *, regnode *, regmatch_info *, regmatch_state *);
typedef struct {
- reh_comp_hook comp;
- reh_exec_hook exec;
+ reh_comp_node_hook comp_node;
+ reh_exec_node_hook exec_node;
} reh_config;
void reh_register(pTHX_ const char *, reh_config *);
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE(ptr, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 1);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s:%d: (op %s) %s %"UVuf" (len %"UVuf") (max %"UVuf").\n",
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE_ARG(ptr, op, arg);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 2);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 2);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s(%d): (op %s) %s %"UVuf" <- %"UVuf" (max %"UVuf").\n",
#endif
src = NEXTOPER(place);
FILL_ADVANCE_NODE(place, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (place) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (place) - 1);
Zero(src, offset, regnode);
}
next = NULL;
state_num = OP(scan);
- REH_CALL_REGEXEC_HOOK(rex, scan, reginfo, st);
+ REH_CALL_EXEC_NODE_HOOK(rex, scan, reginfo, st);
reenter_switch:
assert(PL_reglastparen == &rex->lastparen);
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE(ptr, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 1);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s:%d: (op %s) %s %"UVuf" (len %"UVuf") (max %"UVuf").\n",
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE_ARG(ptr, op, arg);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 2);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 2);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s(%d): (op %s) %s %"UVuf" <- %"UVuf" (max %"UVuf").\n",
#endif
src = NEXTOPER(place);
FILL_ADVANCE_NODE(place, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (place) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (place) - 1);
Zero(src, offset, regnode);
}
next = NULL;
state_num = OP(scan);
- REH_CALL_REGEXEC_HOOK(rex, scan, reginfo, st);
+ REH_CALL_EXEC_NODE_HOOK(rex, scan, reginfo, st);
reenter_switch:
assert(PL_reglastparen == &rex->lastparen);
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE(ptr, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 1);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s:%d: (op %s) %s %"UVuf" (len %"UVuf") (max %"UVuf").\n",
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE_ARG(ptr, op, arg);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 2);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 2);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s(%d): (op %s) %s %"UVuf" <- %"UVuf" (max %"UVuf").\n",
#endif
src = NEXTOPER(place);
FILL_ADVANCE_NODE(place, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (place) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (place) - 1);
Zero(src, offset, regnode);
}
next = NULL;
state_num = OP(scan);
- REH_CALL_REGEXEC_HOOK(rex, scan, reginfo, st);
+ REH_CALL_EXEC_NODE_HOOK(rex, scan, reginfo, st);
reenter_switch:
assert(PL_reglastparen == &rex->lastparen);
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE(ptr, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 1);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s:%d: (op %s) %s %"UVuf" (len %"UVuf") (max %"UVuf").\n",
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE_ARG(ptr, op, arg);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 2);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 2);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s(%d): (op %s) %s %"UVuf" <- %"UVuf" (max %"UVuf").\n",
#endif
src = NEXTOPER(place);
FILL_ADVANCE_NODE(place, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (place) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (place) - 1);
Zero(src, offset, regnode);
}
next = NULL;
state_num = OP(scan);
- REH_CALL_REGEXEC_HOOK(rex, scan, reginfo, st);
+ REH_CALL_EXEC_NODE_HOOK(rex, scan, reginfo, st);
reenter_switch:
assert(PL_reglastparen == &rex->lastparen);
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE(ptr, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 1);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s:%d: (op %s) %s %"UVuf" (len %"UVuf") (max %"UVuf").\n",
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE_ARG(ptr, op, arg);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 2);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 2);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s(%d): (op %s) %s %"UVuf" <- %"UVuf" (max %"UVuf").\n",
#endif
src = NEXTOPER(place);
FILL_ADVANCE_NODE(place, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (place) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (place) - 1);
Zero(src, offset, regnode);
}
next = NULL;
state_num = OP(scan);
- REH_CALL_REGEXEC_HOOK(rex, scan, reginfo, st);
+ REH_CALL_EXEC_NODE_HOOK(rex, scan, reginfo, st);
reenter_switch:
assert(PL_reglastparen == &rex->lastparen);
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE(ptr, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 1);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s:%d: (op %s) %s %"UVuf" (len %"UVuf") (max %"UVuf").\n",
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE_ARG(ptr, op, arg);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 2);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 2);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s(%d): (op %s) %s %"UVuf" <- %"UVuf" (max %"UVuf").\n",
#endif
src = NEXTOPER(place);
FILL_ADVANCE_NODE(place, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (place) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (place) - 1);
Zero(src, offset, regnode);
}
next = NULL;
state_num = OP(scan);
- REH_CALL_REGEXEC_HOOK(rex, scan, reginfo, st);
+ REH_CALL_EXEC_NODE_HOOK(rex, scan, reginfo, st);
reenter_switch:
assert(PL_reglastparen == &rex->lastparen);
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE(ptr, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 1);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s:%d: (op %s) %s %"UVuf" (len %"UVuf") (max %"UVuf").\n",
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE_ARG(ptr, op, arg);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 2);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 2);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s(%d): (op %s) %s %"UVuf" <- %"UVuf" (max %"UVuf").\n",
#endif
src = NEXTOPER(place);
FILL_ADVANCE_NODE(place, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (place) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (place) - 1);
Zero(src, offset, regnode);
}
next = NULL;
state_num = OP(scan);
- REH_CALL_REGEXEC_HOOK(rex, scan, reginfo, st);
+ REH_CALL_EXEC_NODE_HOOK(rex, scan, reginfo, st);
reenter_switch:
assert(PL_reglastparen == &rex->lastparen);
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE(ptr, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 1);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s:%d: (op %s) %s %"UVuf" (len %"UVuf") (max %"UVuf").\n",
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE_ARG(ptr, op, arg);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 2);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 2);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s(%d): (op %s) %s %"UVuf" <- %"UVuf" (max %"UVuf").\n",
#endif
src = NEXTOPER(place);
FILL_ADVANCE_NODE(place, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (place) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (place) - 1);
Zero(src, offset, regnode);
}
next = NULL;
state_num = OP(scan);
- REH_CALL_REGEXEC_HOOK(rex, scan, reginfo, st);
+ REH_CALL_EXEC_NODE_HOOK(rex, scan, reginfo, st);
reenter_switch:
assert(PL_reglastparen == &rex->lastparen);
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE(ptr, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 1);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s:%d: (op %s) %s %"UVuf" (len %"UVuf") (max %"UVuf").\n",
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE_ARG(ptr, op, arg);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 2);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 2);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s(%d): (op %s) %s %"UVuf" <- %"UVuf" (max %"UVuf").\n",
#endif
src = NEXTOPER(place);
FILL_ADVANCE_NODE(place, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (place) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (place) - 1);
Zero(src, offset, regnode);
}
next = NULL;
state_num = OP(scan);
- REH_CALL_REGEXEC_HOOK(rex, scan, reginfo, st);
+ REH_CALL_EXEC_NODE_HOOK(rex, scan, reginfo, st);
reenter_switch:
assert(PL_reglastparen == &rex->lastparen);
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE(ptr, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 1);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s:%d: (op %s) %s %"UVuf" (len %"UVuf") (max %"UVuf").\n",
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE_ARG(ptr, op, arg);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 2);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 2);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s(%d): (op %s) %s %"UVuf" <- %"UVuf" (max %"UVuf").\n",
#endif
src = NEXTOPER(place);
FILL_ADVANCE_NODE(place, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (place) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (place) - 1);
Zero(src, offset, regnode);
}
next = NULL;
state_num = OP(scan);
- REH_CALL_REGEXEC_HOOK(rex, scan, reginfo, st);
+ REH_CALL_EXEC_NODE_HOOK(rex, scan, reginfo, st);
reenter_switch:
assert(PL_reglastparen == &rex->lastparen);
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE(ptr, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 1);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s:%d: (op %s) %s %"UVuf" (len %"UVuf") (max %"UVuf").\n",
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE_ARG(ptr, op, arg);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 2);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 2);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s(%d): (op %s) %s %"UVuf" <- %"UVuf" (max %"UVuf").\n",
#endif
src = NEXTOPER(place);
FILL_ADVANCE_NODE(place, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (place) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (place) - 1);
Zero(src, offset, regnode);
}
next = NULL;
state_num = OP(scan);
- REH_CALL_REGEXEC_HOOK(rex, scan, reginfo, st);
+ REH_CALL_EXEC_NODE_HOOK(rex, scan, reginfo, st);
reenter_switch:
assert(PL_reglastparen == &rex->lastparen);
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE(ptr, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 1);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s:%d: (op %s) %s %"UVuf" (len %"UVuf") (max %"UVuf").\n",
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE_ARG(ptr, op, arg);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 2);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 2);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s(%d): (op %s) %s %"UVuf" <- %"UVuf" (max %"UVuf").\n",
#endif
src = NEXTOPER(place);
FILL_ADVANCE_NODE(place, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (place) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (place) - 1);
Zero(src, offset, regnode);
}
next = NULL;
state_num = OP(scan);
- REH_CALL_REGEXEC_HOOK(rex, scan, reginfo, st);
+ REH_CALL_EXEC_NODE_HOOK(rex, scan, reginfo, st);
reenter_switch:
assert(PL_reglastparen == &rex->lastparen);
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE(ptr, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 1);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s:%d: (op %s) %s %"UVuf" (len %"UVuf") (max %"UVuf").\n",
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE_ARG(ptr, op, arg);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 2);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 2);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s(%d): (op %s) %s %"UVuf" <- %"UVuf" (max %"UVuf").\n",
#endif
src = NEXTOPER(place);
FILL_ADVANCE_NODE(place, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (place) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (place) - 1);
Zero(src, offset, regnode);
}
next = NULL;
state_num = OP(scan);
- REH_CALL_REGEXEC_HOOK(rex, scan, reginfo, st);
+ REH_CALL_EXEC_NODE_HOOK(rex, scan, reginfo, st);
reenter_switch:
assert(PL_reglastparen == &rex->lastparen);
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE(ptr, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 1);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s:%d: (op %s) %s %"UVuf" (len %"UVuf") (max %"UVuf").\n",
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE_ARG(ptr, op, arg);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 2);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 2);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s(%d): (op %s) %s %"UVuf" <- %"UVuf" (max %"UVuf").\n",
#endif
src = NEXTOPER(place);
FILL_ADVANCE_NODE(place, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (place) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (place) - 1);
Zero(src, offset, regnode);
}
next = NULL;
state_num = OP(scan);
- REH_CALL_REGEXEC_HOOK(rex, scan, reginfo, st);
+ REH_CALL_EXEC_NODE_HOOK(rex, scan, reginfo, st);
reenter_switch:
assert(PL_reglastparen == &rex->lastparen);
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE(ptr, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 1);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s:%d: (op %s) %s %"UVuf" (len %"UVuf") (max %"UVuf").\n",
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE_ARG(ptr, op, arg);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 2);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 2);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s(%d): (op %s) %s %"UVuf" <- %"UVuf" (max %"UVuf").\n",
#endif
src = NEXTOPER(place);
FILL_ADVANCE_NODE(place, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (place) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (place) - 1);
Zero(src, offset, regnode);
}
next = NULL;
state_num = OP(scan);
- REH_CALL_REGEXEC_HOOK(rex, scan, reginfo, st);
+ REH_CALL_EXEC_NODE_HOOK(rex, scan, reginfo, st);
reenter_switch:
assert(PL_reglastparen == &rex->lastparen);
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE(ptr, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 1);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s:%d: (op %s) %s %"UVuf" (len %"UVuf") (max %"UVuf").\n",
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE_ARG(ptr, op, arg);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 2);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 2);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s(%d): (op %s) %s %"UVuf" <- %"UVuf" (max %"UVuf").\n",
#endif
src = NEXTOPER(place);
FILL_ADVANCE_NODE(place, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (place) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (place) - 1);
Zero(src, offset, regnode);
}
next = NULL;
state_num = OP(scan);
- REH_CALL_REGEXEC_HOOK(rex, scan, reginfo, st);
+ REH_CALL_EXEC_NODE_HOOK(rex, scan, reginfo, st);
reenter_switch:
assert(PL_reglastparen == &rex->lastparen);
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE(ptr, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 1);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s:%d: (op %s) %s %"UVuf" (len %"UVuf") (max %"UVuf").\n",
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE_ARG(ptr, op, arg);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 2);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 2);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s(%d): (op %s) %s %"UVuf" <- %"UVuf" (max %"UVuf").\n",
#endif
src = NEXTOPER(place);
FILL_ADVANCE_NODE(place, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (place) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (place) - 1);
Zero(src, offset, regnode);
}
next = NULL;
state_num = OP(scan);
- REH_CALL_REGEXEC_HOOK(rex, scan, reginfo, st);
+ REH_CALL_EXEC_NODE_HOOK(rex, scan, reginfo, st);
reenter_switch:
assert(PL_reglastparen == &rex->lastparen);
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE(ptr, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 1);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s:%d: (op %s) %s %"UVuf" (len %"UVuf") (max %"UVuf").\n",
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE_ARG(ptr, op, arg);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 2);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 2);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s(%d): (op %s) %s %"UVuf" <- %"UVuf" (max %"UVuf").\n",
#endif
src = NEXTOPER(place);
FILL_ADVANCE_NODE(place, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (place) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (place) - 1);
Zero(src, offset, regnode);
}
next = NULL;
state_num = OP(scan);
- REH_CALL_REGEXEC_HOOK(rex, scan, reginfo, st);
+ REH_CALL_EXEC_NODE_HOOK(rex, scan, reginfo, st);
reenter_switch:
assert(PL_reglastparen == &rex->lastparen);
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE(ptr, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 1);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s:%d: (op %s) %s %"UVuf" (len %"UVuf") (max %"UVuf").\n",
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE_ARG(ptr, op, arg);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 2);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 2);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s(%d): (op %s) %s %"UVuf" <- %"UVuf" (max %"UVuf").\n",
#endif
src = NEXTOPER(place);
FILL_ADVANCE_NODE(place, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (place) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (place) - 1);
Zero(src, offset, regnode);
}
next = NULL;
state_num = OP(scan);
- REH_CALL_REGEXEC_HOOK(rex, scan, reginfo, st);
+ REH_CALL_EXEC_NODE_HOOK(rex, scan, reginfo, st);
reenter_switch:
assert(PL_reglastparen == &rex->lastparen);
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE(ptr, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 1);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s:%d: (op %s) %s %"UVuf" (len %"UVuf") (max %"UVuf").\n",
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE_ARG(ptr, op, arg);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 2);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 2);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s(%d): (op %s) %s %"UVuf" <- %"UVuf" (max %"UVuf").\n",
#endif
src = NEXTOPER(place);
FILL_ADVANCE_NODE(place, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (place) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (place) - 1);
Zero(src, offset, regnode);
}
next = NULL;
state_num = OP(scan);
- REH_CALL_REGEXEC_HOOK(rex, scan, reginfo, st);
+ REH_CALL_EXEC_NODE_HOOK(rex, scan, reginfo, st);
reenter_switch:
assert(PL_reglastparen == &rex->lastparen);
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE(ptr, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 1);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s:%d: (op %s) %s %"UVuf" (len %"UVuf") (max %"UVuf").\n",
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE_ARG(ptr, op, arg);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 2);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 2);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s(%d): (op %s) %s %"UVuf" <- %"UVuf" (max %"UVuf").\n",
#endif
src = NEXTOPER(place);
FILL_ADVANCE_NODE(place, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (place) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (place) - 1);
Zero(src, offset, regnode);
}
next = NULL;
state_num = OP(scan);
- REH_CALL_REGEXEC_HOOK(rex, scan, reginfo, st);
+ REH_CALL_EXEC_NODE_HOOK(rex, scan, reginfo, st);
reenter_switch:
assert(PL_reglastparen == &rex->lastparen);
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE(ptr, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 1);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s:%d: (op %s) %s %"UVuf" (len %"UVuf") (max %"UVuf").\n",
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE_ARG(ptr, op, arg);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 2);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 2);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s(%d): (op %s) %s %"UVuf" <- %"UVuf" (max %"UVuf").\n",
#endif
src = NEXTOPER(place);
FILL_ADVANCE_NODE(place, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (place) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (place) - 1);
Zero(src, offset, regnode);
}
next = NULL;
state_num = OP(scan);
- REH_CALL_REGEXEC_HOOK(rex, scan, reginfo, st);
+ REH_CALL_EXEC_NODE_HOOK(rex, scan, reginfo, st);
reenter_switch:
assert(PL_reglastparen == &rex->lastparen);
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE(ptr, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 1);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s:%d: (op %s) %s %"UVuf" (len %"UVuf") (max %"UVuf").\n",
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE_ARG(ptr, op, arg);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 2);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 2);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s(%d): (op %s) %s %"UVuf" <- %"UVuf" (max %"UVuf").\n",
#endif
src = NEXTOPER(place);
FILL_ADVANCE_NODE(place, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (place) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (place) - 1);
Zero(src, offset, regnode);
}
next = NULL;
state_num = OP(scan);
- REH_CALL_REGEXEC_HOOK(rex, scan, reginfo, st);
+ REH_CALL_EXEC_NODE_HOOK(rex, scan, reginfo, st);
reenter_switch:
assert(PL_reglastparen == &rex->lastparen);
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE(ptr, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 1);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s:%d: (op %s) %s %"UVuf" (len %"UVuf") (max %"UVuf").\n",
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE_ARG(ptr, op, arg);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 2);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 2);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s(%d): (op %s) %s %"UVuf" <- %"UVuf" (max %"UVuf").\n",
#endif
src = NEXTOPER(place);
FILL_ADVANCE_NODE(place, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (place) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (place) - 1);
Zero(src, offset, regnode);
}
next = NULL;
state_num = OP(scan);
- REH_CALL_REGEXEC_HOOK(rex, scan, reginfo, st);
+ REH_CALL_EXEC_NODE_HOOK(rex, scan, reginfo, st);
reenter_switch:
assert(PL_reglastparen == &rex->lastparen);
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE(ptr, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 1);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s:%d: (op %s) %s %"UVuf" (len %"UVuf") (max %"UVuf").\n",
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE_ARG(ptr, op, arg);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 2);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 2);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s(%d): (op %s) %s %"UVuf" <- %"UVuf" (max %"UVuf").\n",
#endif
src = NEXTOPER(place);
FILL_ADVANCE_NODE(place, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (place) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (place) - 1);
Zero(src, offset, regnode);
}
next = NULL;
state_num = OP(scan);
- REH_CALL_REGEXEC_HOOK(rex, scan, reginfo, st);
+ REH_CALL_EXEC_NODE_HOOK(rex, scan, reginfo, st);
reenter_switch:
assert(PL_reglastparen == &rex->lastparen);
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE(ptr, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 1);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s:%d: (op %s) %s %"UVuf" (len %"UVuf") (max %"UVuf").\n",
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE_ARG(ptr, op, arg);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 2);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 2);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s(%d): (op %s) %s %"UVuf" <- %"UVuf" (max %"UVuf").\n",
#endif
src = NEXTOPER(place);
FILL_ADVANCE_NODE(place, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (place) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (place) - 1);
Zero(src, offset, regnode);
}
next = NULL;
state_num = OP(scan);
- REH_CALL_REGEXEC_HOOK(rex, scan, reginfo, st);
+ REH_CALL_EXEC_NODE_HOOK(rex, scan, reginfo, st);
reenter_switch:
assert(PL_reglastparen == &rex->lastparen);
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE(ptr, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 1);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s:%d: (op %s) %s %"UVuf" (len %"UVuf") (max %"UVuf").\n",
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE_ARG(ptr, op, arg);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 2);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 2);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s(%d): (op %s) %s %"UVuf" <- %"UVuf" (max %"UVuf").\n",
#endif
src = NEXTOPER(place);
FILL_ADVANCE_NODE(place, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (place) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (place) - 1);
Zero(src, offset, regnode);
}
next = NULL;
state_num = OP(scan);
- REH_CALL_REGEXEC_HOOK(rex, scan, reginfo, st);
+ REH_CALL_EXEC_NODE_HOOK(rex, scan, reginfo, st);
reenter_switch:
assert(PL_reglastparen == &rex->lastparen);
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE(ptr, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 1);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s:%d: (op %s) %s %"UVuf" (len %"UVuf") (max %"UVuf").\n",
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE_ARG(ptr, op, arg);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 2);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 2);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s(%d): (op %s) %s %"UVuf" <- %"UVuf" (max %"UVuf").\n",
#endif
src = NEXTOPER(place);
FILL_ADVANCE_NODE(place, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (place) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (place) - 1);
Zero(src, offset, regnode);
}
next = NULL;
state_num = OP(scan);
- REH_CALL_REGEXEC_HOOK(rex, scan, reginfo, st);
+ REH_CALL_EXEC_NODE_HOOK(rex, scan, reginfo, st);
reenter_switch:
assert(PL_reglastparen == &rex->lastparen);
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE(ptr, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 1);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s:%d: (op %s) %s %"UVuf" (len %"UVuf") (max %"UVuf").\n",
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE_ARG(ptr, op, arg);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 2);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 2);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s(%d): (op %s) %s %"UVuf" <- %"UVuf" (max %"UVuf").\n",
#endif
src = NEXTOPER(place);
FILL_ADVANCE_NODE(place, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (place) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (place) - 1);
Zero(src, offset, regnode);
}
next = NULL;
state_num = OP(scan);
- REH_CALL_REGEXEC_HOOK(rex, scan, reginfo, st);
+ REH_CALL_EXEC_NODE_HOOK(rex, scan, reginfo, st);
reenter_switch:
assert(PL_reglastparen == &rex->lastparen);
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE(ptr, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 1);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s:%d: (op %s) %s %"UVuf" (len %"UVuf") (max %"UVuf").\n",
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE_ARG(ptr, op, arg);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 2);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 2);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s(%d): (op %s) %s %"UVuf" <- %"UVuf" (max %"UVuf").\n",
#endif
src = NEXTOPER(place);
FILL_ADVANCE_NODE(place, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (place) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (place) - 1);
Zero(src, offset, regnode);
}
next = NULL;
state_num = OP(scan);
- REH_CALL_REGEXEC_HOOK(rex, scan, reginfo, st);
+ REH_CALL_EXEC_NODE_HOOK(rex, scan, reginfo, st);
reenter_switch:
assert(PL_reglastparen == &rex->lastparen);
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE(ptr, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 1);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s:%d: (op %s) %s %"UVuf" (len %"UVuf") (max %"UVuf").\n",
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE_ARG(ptr, op, arg);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 2);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 2);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s(%d): (op %s) %s %"UVuf" <- %"UVuf" (max %"UVuf").\n",
#endif
src = NEXTOPER(place);
FILL_ADVANCE_NODE(place, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (place) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (place) - 1);
Zero(src, offset, regnode);
}
next = NULL;
state_num = OP(scan);
- REH_CALL_REGEXEC_HOOK(rex, scan, reginfo, st);
+ REH_CALL_EXEC_NODE_HOOK(rex, scan, reginfo, st);
reenter_switch:
assert(PL_reglastparen == &rex->lastparen);
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE(ptr, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 1);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s:%d: (op %s) %s %"UVuf" (len %"UVuf") (max %"UVuf").\n",
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE_ARG(ptr, op, arg);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 2);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 2);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s(%d): (op %s) %s %"UVuf" <- %"UVuf" (max %"UVuf").\n",
#endif
src = NEXTOPER(place);
FILL_ADVANCE_NODE(place, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (place) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (place) - 1);
Zero(src, offset, regnode);
}
next = NULL;
state_num = OP(scan);
- REH_CALL_REGEXEC_HOOK(rex, scan, reginfo, st);
+ REH_CALL_EXEC_NODE_HOOK(rex, scan, reginfo, st);
reenter_switch:
assert(PL_reglastparen == &rex->lastparen);
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE(ptr, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 1);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s:%d: (op %s) %s %"UVuf" (len %"UVuf") (max %"UVuf").\n",
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE_ARG(ptr, op, arg);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 2);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 2);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s(%d): (op %s) %s %"UVuf" <- %"UVuf" (max %"UVuf").\n",
#endif
src = NEXTOPER(place);
FILL_ADVANCE_NODE(place, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (place) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (place) - 1);
Zero(src, offset, regnode);
}
next = NULL;
state_num = OP(scan);
- REH_CALL_REGEXEC_HOOK(rex, scan, reginfo, st);
+ REH_CALL_EXEC_NODE_HOOK(rex, scan, reginfo, st);
reenter_switch:
assert(PL_reglastparen == &rex->lastparen);
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE(ptr, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 1);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s:%d: (op %s) %s %"UVuf" (len %"UVuf") (max %"UVuf").\n",
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE_ARG(ptr, op, arg);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 2);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 2);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s(%d): (op %s) %s %"UVuf" <- %"UVuf" (max %"UVuf").\n",
#endif
src = NEXTOPER(place);
FILL_ADVANCE_NODE(place, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (place) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (place) - 1);
Zero(src, offset, regnode);
}
next = NULL;
state_num = OP(scan);
- REH_CALL_REGEXEC_HOOK(rex, scan, reginfo, st);
+ REH_CALL_EXEC_NODE_HOOK(rex, scan, reginfo, st);
reenter_switch:
assert(PL_reglastparen == &rex->lastparen);
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE(ptr, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 1);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s:%d: (op %s) %s %"UVuf" (len %"UVuf") (max %"UVuf").\n",
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE_ARG(ptr, op, arg);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 2);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 2);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s(%d): (op %s) %s %"UVuf" <- %"UVuf" (max %"UVuf").\n",
#endif
src = NEXTOPER(place);
FILL_ADVANCE_NODE(place, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (place) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (place) - 1);
Zero(src, offset, regnode);
}
next = NULL;
state_num = OP(scan);
- REH_CALL_REGEXEC_HOOK(rex, scan, reginfo, st);
+ REH_CALL_EXEC_NODE_HOOK(rex, scan, reginfo, st);
reenter_switch:
assert(PL_reglastparen == &rex->lastparen);
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE(ptr, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 1);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s:%d: (op %s) %s %"UVuf" (len %"UVuf") (max %"UVuf").\n",
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE_ARG(ptr, op, arg);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 2);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 2);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s(%d): (op %s) %s %"UVuf" <- %"UVuf" (max %"UVuf").\n",
#endif
src = NEXTOPER(place);
FILL_ADVANCE_NODE(place, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (place) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (place) - 1);
Zero(src, offset, regnode);
}
next = NULL;
state_num = OP(scan);
- REH_CALL_REGEXEC_HOOK(rex, scan, reginfo, st);
+ REH_CALL_EXEC_NODE_HOOK(rex, scan, reginfo, st);
reenter_switch:
assert(PL_reglastparen == &rex->lastparen);
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE(ptr, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 1);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s:%d: (op %s) %s %"UVuf" (len %"UVuf") (max %"UVuf").\n",
NODE_ALIGN_FILL(ret);
ptr = ret;
FILL_ADVANCE_NODE_ARG(ptr, op, arg);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (ptr) - 2);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (ptr) - 2);
#ifdef RE_TRACK_PATTERN_OFFSETS
if (RExC_offsets) { /* MJD */
MJD_OFFSET_DEBUG(("%s(%d): (op %s) %s %"UVuf" <- %"UVuf" (max %"UVuf").\n",
#endif
src = NEXTOPER(place);
FILL_ADVANCE_NODE(place, op);
- REH_CALL_REGCOMP_HOOK(pRExC_state->rx, (place) - 1);
+ REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, (place) - 1);
Zero(src, offset, regnode);
}
next = NULL;
state_num = OP(scan);
- REH_CALL_REGEXEC_HOOK(rex, scan, reginfo, st);
+ REH_CALL_EXEC_NODE_HOOK(rex, scan, reginfo, st);
reenter_switch:
assert(PL_reglastparen == &rex->lastparen);
} elsif ($line =~ /FILL_ADVANCE_NODE(_ARG)?\(\s*([^\s,\)]+)/) {
my $shift = $1 ? 2 : 1;
push @{$patched_chunks{$file}}, 'COMP_NODE_HOOK';
- return $line, " REH_CALL_REGCOMP_HOOK(pRExC_state->rx, ($2) - $shift);\n"
+ return $line, " REH_CALL_COMP_NODE_HOOK(pRExC_state->rx, ($2) - $shift);\n"
}
return $line;
return $line, "#include \"re_defs.h\"\n";
} elsif ($line =~ /^\s*reenter_switch:\s*$/) {
push @{$patched_chunks{$file}}, 'EXEC_NODE_HOOK';
- return "\tREH_CALL_REGEXEC_HOOK(rex, scan, reginfo, st);\n", $line;
+ return "\tREH_CALL_EXEC_NODE_HOOK(rex, scan, reginfo, st);\n", $line;
}
return $line;
av_push((AV *) SvRV(V), sv); \
} } while (0)
-STATIC void reht_foo_comp(pTHX_ regexp *rx, regnode *node) {
+STATIC void reht_foo_comp_node(pTHX_ regexp *rx, regnode *node) {
REHT_PUSH_NODE_NAME(reht_foo_var, "c:");
}
-STATIC void reht_foo_exec(pTHX_ regexp *rx, regnode *node, regmatch_info *reginfo, regmatch_state *st) {
+STATIC void reht_foo_exec_node(pTHX_ regexp *rx, regnode *node, regmatch_info *reginfo, regmatch_state *st) {
REHT_PUSH_NODE_NAME(reht_foo_var, "e:");
}
STATIC SV *reht_bar_var;
-STATIC void reht_bar_comp(pTHX_ regexp *rx, regnode *node) {
+STATIC void reht_bar_comp_node(pTHX_ regexp *rx, regnode *node) {
REHT_PUSH_NODE_NAME(reht_bar_var, "c:");
}
-STATIC void reht_bar_exec(pTHX_ regexp *rx, regnode *node, regmatch_info *reginfo, regmatch_state *st) {
+STATIC void reht_bar_exec_node(pTHX_ regexp *rx, regnode *node, regmatch_info *reginfo, regmatch_state *st) {
REHT_PUSH_NODE_NAME(reht_bar_var, "e:");
}
STATIC SV *reht_custom_var;
-STATIC void reht_custom_comp(pTHX_ regexp *rx, regnode *node) {
+STATIC void reht_custom_comp_node(pTHX_ regexp *rx, regnode *node) {
const char *node_name;
node_name = PL_reg_name[OP(node)];
}
-STATIC void reht_custom_exec(pTHX_ regexp *rx, regnode *node, regmatch_info *reginfo, regmatch_state *st) {
+STATIC void reht_custom_exec_node(pTHX_ regexp *rx, regnode *node, regmatch_info *reginfo, regmatch_state *st) {
STRLEN node_namelen;
const char *node_name;
{
{
reh_config foo_cfg;
- foo_cfg.comp = reht_foo_comp;
- foo_cfg.exec = reht_foo_exec;
+ foo_cfg.comp_node = reht_foo_comp_node;
+ foo_cfg.exec_node = reht_foo_exec_node;
reh_register(__PACKAGE__ "::foo", &foo_cfg);
reht_foo_var = NULL;
}
{
reh_config bar_cfg;
- bar_cfg.comp = reht_bar_comp;
- bar_cfg.exec = reht_bar_exec;
+ bar_cfg.comp_node = reht_bar_comp_node;
+ bar_cfg.exec_node = reht_bar_exec_node;
reh_register(__PACKAGE__ "::bar", &bar_cfg);
reht_bar_var = NULL;
}
{
reh_config custom_cfg;
- custom_cfg.comp = reht_custom_comp;
- custom_cfg.exec = reht_custom_exec;
+ custom_cfg.comp_node = reht_custom_comp_node;
+ custom_cfg.exec_node = reht_custom_exec_node;
reh_register(__PACKAGE__ "::custom", &custom_cfg);
reht_custom_var = NULL;
}