Lines Matching defs:node

418 /* Macros for recording node offsets.   20001227 mjd@plover.com 
420 * element 2*n-1 of the array. Element #2n holds the byte length node #n.
428 #define Set_Node_Offset_To_R(node,byte) STMT_START { \
430 MJD_OFFSET_DEBUG(("** (%d) offset of node %d is %d.\n", \
431 __LINE__, (node), (byte))); \
432 if((node) < 0) { \
433 Perl_croak(aTHX_ "value of node is %d in Offset macro", node); \
435 RExC_offsets[2*(node)-1] = (byte); \
440 #define Set_Node_Offset(node,byte) \
441 Set_Node_Offset_To_R((node)-RExC_emit_start, (byte)-RExC_start)
444 #define Set_Node_Length_To_R(node,len) STMT_START { \
446 MJD_OFFSET_DEBUG(("** (%d) size of node %d is %d.\n", \
447 __LINE__, (node), (len))); \
448 if((node) < 0) { \
449 Perl_croak(aTHX_ "value of node is %d in Length macro", node); \
451 RExC_offsets[2*(node)] = (len); \
456 #define Set_Node_Length(node,len) \
457 Set_Node_Length_To_R((node)-RExC_emit_start, len)
459 #define Set_Node_Cur_Length(node) \
460 Set_Node_Length(node, RExC_parse - parse_start)
791 /* Follow the next-chain of the current node and optimize
2184 /* Make an OPEN node, if parenthesized. */
2491 /* Make a closing node, and hook it on the end. */
2517 /* Hook the tails of the branches to the closing node. */
2529 U8 node = ((p - parens) % 2) ? UNLESSM : IFMATCH;
2533 node = SUSPEND, flag = 0;
2534 reginsert(pRExC_state, node,ret);
2630 * of * and + are somewhat optimized: they use the same NOTHING node as
2632 * It might seem that this node could be dispensed with entirely, but the
2807 * it can turn them into a single node, which is smaller to store and
2809 * separate node; the code is simpler that way and it's not worth fixing.
2875 /* Make parent create an empty node if needed. */
4316 - reg_node - emit a node
4352 - reganode - emit a node with an argument
4438 place = opnd; /* Op node, where operand used to be. */
4458 - regtail - set the next-pointer at the end of a node chain of p to val.
4469 /* Find last node. */
4530 S_dumpuntil(pTHX_ regnode *start, regnode *node, regnode *last, SV* sv, I32 l)
4535 while (op != END && (!last || node < last)) {
4538 NODE_ALIGN(node);
4539 op = OP(node);
4542 next = regnext(node);
4544 if (OP(node) == OPTIMIZED)
4546 regprop(sv, node);
4547 PerlIO_printf(Perl_debug_log, "%4"IVdf":%*s%s", (IV)(node - start),
4561 node = dumpuntil(start, NEXTOPER(NEXTOPER(node)), nnode, sv, l + 1);
4564 node = dumpuntil(start, NEXTOPER(node), next, sv, l + 1);
4567 node = dumpuntil(start, NEXTOPER(node) + EXTRA_STEP_2ARGS,
4568 NEXTOPER(node) + EXTRA_STEP_2ARGS + 1, sv, l + 1);
4571 node = dumpuntil(start, NEXTOPER(node) + EXTRA_STEP_2ARGS,
4575 node = dumpuntil(start, NEXTOPER(node), NEXTOPER(node) + 1, sv, l + 1);
4579 node += 1 + ((ANYOF_FLAGS(node) & ANYOF_LARGE)
4581 node = NEXTOPER(node);
4585 node += NODE_SZ_STR(node) - 1;
4586 node = NEXTOPER(node);
4589 node = NEXTOPER(node);
4590 node += regarglen[(U8)op];
4597 return node;
4738 * node was UTF-8" --jhi */
5016 - regnext - dig the "next" pointer out of a node