Home | History | Annotate | Download | only in regex

Lines Matching defs:SP

148 #define	SP(t, s, c)	print(m, t, s, c, stdout)
152 #define SP(t, s, c) /* nothing */
311 SP("mloop", m->st, *start);
442 const char *sp; /* start of string matched by it */
458 sp = start;
480 sp += XMBRTOWC(NULL, sp, (size_t)(stop - start),
494 sp += XMBRTOWC(NULL, sp, (size_t)(stop - start),
506 rest = walk(m, sp, stp, ss, es, false);
514 assert(stp >= sp); /* it did work */
519 if (walk(m, sp, rest, ssub, esub, false) != NULL) {
520 dp = dissect(m, sp, rest, ssub, esub);
523 assert(sp == rest);
524 sp = rest;
530 rest = walk(m, sp, stp, ss, es, false);
538 assert(stp >= sp); /* it did work */
542 ssp = sp;
560 sp = rest;
566 rest = walk(m, sp, stp, ss, es, false);
574 assert(stp >= sp); /* it did work */
580 if (walk(m, sp, rest, ssub, esub, false) == rest)
593 dp = dissect(m, sp, rest, ssub, esub);
595 sp = rest;
607 m->pmatch[i].rm_so = sp - m->offp;
612 m->pmatch[i].rm_eo = sp - m->offp;
620 assert(sp == stop);
621 return(sp);
624 #define ISBOW(m, sp) \
625 (sp < m->endp && ISWORD(*sp) && \
626 ((sp == m->beginp && !(m->eflags&REG_NOTBOL)) || \
627 (sp > m->offp && !ISWORD(*(sp-1)))))
628 #define ISEOW(m, sp) \
629 (((sp == m->endp && !(m->eflags&REG_NOTEOL)) || \
630 (sp < m->endp && *sp == '\n' && \
632 (sp < m->endp && !ISWORD(*sp)) ) && \
633 (sp > m->beginp && ISWORD(*(sp-1)))) \
652 const char *sp; /* start of string matched by it */
669 sp = start;
676 if (sp == stop)
678 sp += XMBRTOWC(&wc, sp, (size_t)(stop - sp),
684 if (sp == stop)
686 sp += XMBRTOWC(&wc, sp, (size_t)(stop - sp),
692 if (sp == stop)
695 sp += XMBRTOWC(&wc, sp, (size_t)(stop - sp),
701 if (sp == m->beginp && (m->eflags & REG_NOTBOL) == 0)
707 if (sp == m->endp && (m->eflags & REG_NOTEOL) == 0)
713 if ((sp == m->beginp && !(m->eflags&REG_NOTBOL)) ||
714 (sp > m->offp && sp < m->endp &&
715 *(sp-1) == '\n' && (m->g->cflags&REG_NEWLINE)))
721 if ( (sp == m->endp && !(m->eflags&REG_NOTEOL)) ||
722 (sp < m->endp && *sp == '\n' &&
729 if (ISBOW(m, sp) || ISEOW(m, sp))
735 if (((sp == m->beginp) && !ISWORD(*sp)) ||
736 (sp == m->endp && !ISWORD(*(sp - 1))))
738 else if (ISWORD(*(sp - 1)) == ISWORD(*sp))
744 if (ISBOW(m, sp))
750 if (ISEOW(m, sp))
771 if (sp != stop)
773 return(sp);
778 AT("hard", sp, stop, ss, stopst);
791 if (sp > stop - len)
794 if (memcmp(sp, ssp, len) != 0)
798 return(backref(m, sp+len, stop, ss+1, stopst, lev, rec));
800 dp = backref(m, sp, stop, ss+1, stopst, lev, rec);
803 return(backref(m, sp, stop, ss+OPND(s)+1, stopst, lev, rec));
807 m->lastpos[lev+1] = sp;
808 return(backref(m, sp, stop, ss+1, stopst, lev+1, rec));
810 if (sp == m->lastpos[lev]) /* last pass matched null */
811 return(backref(m, sp, stop, ss+1, stopst, lev-1, rec));
813 m->lastpos[lev] = sp;
814 dp = backref(m, sp, stop, ss-OPND(s)+1, stopst, lev, rec);
816 return(backref(m, sp, stop, ss+1, stopst, lev-1, rec));
824 dp = backref(m, sp, stop, ssub, esub, lev, rec);
845 m->pmatch[i].rm_so = sp - m->offp;
846 dp = backref(m, sp, stop, ss+1, stopst, lev, rec);
855 m->pmatch[i].rm_eo = sp - m->offp;
856 dp = backref(m, sp, stop, ss+1, stopst, lev, rec);
901 SP("sstart", st, *p);
957 SP("sboleol", st, c);
971 SP("sboweow", st, c);
982 SP("snwbnd", st, c);
1003 SP("saft", st, c);