Lines Matching refs:pats

1199 static void prepare_pats __ARGS((pat_T *pats, int has_re));
1202 * Extract info from the tag search pattern "pats->pat".
1205 prepare_pats(pats, has_re)
1206 pat_T *pats;
1209 pats->head = pats->pat;
1210 pats->headlen = pats->len;
1215 if (pats->pat[0] == '^')
1216 pats->head = pats->pat + 1;
1217 else if (pats->pat[0] == '\\' && pats->pat[1] == '<')
1218 pats->head = pats->pat + 2;
1219 if (pats->head == pats->pat)
1220 pats->headlen = 0;
1222 for (pats->headlen = 0; pats->head[pats->headlen] != NUL;
1223 ++pats->headlen)
1225 pats->head[pats->headlen]) != NULL)
1227 if (p_tl != 0 && pats->headlen > p_tl) /* adjust for 'taglength' */
1228 pats->headlen = p_tl;
1232 pats->regmatch.regprog = vim_regcomp(pats->pat, p_magic ? RE_MAGIC : 0);
1234 pats->regmatch.regprog = NULL;
1359 * encoding of the tags file. "pats" point to either one of these. */
1360 pat_T *pats;
1387 pats = &orgpat;
1421 pats->len = (int)STRLEN(pat);
1427 if (pats->len > 3 && pat[pats->len - 3] == '@'
1428 && ASCII_ISALPHA(pat[pats->len - 2])
1429 && ASCII_ISALPHA(pat[pats->len - 1]))
1431 saved_pat = vim_strnsave(pat, pats->len - 3);
1434 help_lang_find = &pat[pats->len - 2];
1435 pats->pat = saved_pat;
1436 pats->len -= 3;
1441 if (p_tl != 0 && pats->len > p_tl) /* adjust for 'taglength' */
1442 pats->len = p_tl;
1444 prepare_pats(pats, has_re);
1463 pats->regmatch.rm_ic = ((p_ic || !noic)
1464 && (findall || pats->headlen == 0 || !p_tbs));
1467 linear = (pats->headlen == 0 || !p_tbs || round == 2);
1469 pats->regmatch.rm_ic = (p_ic || !noic);
1794 pats->regmatch.rm_ic = (p_ic || !noic);
1800 if (state == TS_BINARY && pats->regmatch.rm_ic && !sortic)
1841 if (lbuf[0] == '!' && pats == &orgpat
1852 convpat.pat = string_convert(&vimconv, pats->pat, NULL);
1855 pats = &convpat;
1856 pats->len = (int)STRLEN(pats->pat);
1857 prepare_pats(pats, has_re);
1858 pats->regmatch.rm_ic = orgpat.regmatch.rm_ic;
1873 if (pats->headlen
1930 if (has_re && pats->headlen < cmplen)
1931 cmplen = pats->headlen;
1932 else if (state == TS_LINEAR && pats->headlen != cmplen)
1951 tagcmp = tag_strnicmp(tagp.tagname, pats->head,
1954 tagcmp = STRNCMP(tagp.tagname, pats->head, cmplen);
1962 if (cmplen < pats->headlen)
1964 else if (cmplen > pats->headlen)
2008 if (MB_STRNICMP(tagp.tagname, pats->head, cmplen) != 0)
2018 if (MB_STRNICMP(tagp.tagname, pats->head, cmplen) != 0)
2029 if (MB_STRNICMP(tagp.tagname, pats->head, cmplen) != 0)
2080 if (pats->len != cmplen)
2084 if (pats->regmatch.rm_ic)
2086 match = (MB_STRNICMP(tagp.tagname, pats->pat, cmplen) == 0);
2088 match_no_ic = (STRNCMP(tagp.tagname, pats->pat,
2092 match = (STRNCMP(tagp.tagname, pats->pat, cmplen) == 0);
2099 if (!match && pats->regmatch.regprog != NULL)
2105 match = vim_regexec(&pats->regmatch, tagp.tagname, (colnr_T)0);
2108 matchoff = (int)(pats->regmatch.startp[0] - tagp.tagname);
2109 if (pats->regmatch.rm_ic)
2111 pats->regmatch.rm_ic = FALSE;
2112 match_no_ic = vim_regexec(&pats->regmatch, tagp.tagname,
2114 pats->regmatch.rm_ic = TRUE;
2171 if (pats->regmatch.rm_ic && !match_no_ic)
2412 if (pats == &convpat)
2415 vim_free(pats->pat);
2416 vim_free(pats->regmatch.regprog);
2417 orgpat.regmatch.rm_ic = pats->regmatch.rm_ic;
2418 pats = &orgpat;
2458 if (stop_searching || linear || (!p_ic && noic) || pats->regmatch.rm_ic)
2464 pats->regmatch.rm_ic = TRUE; /* try another time while ignoring case */
2477 vim_free(pats->regmatch.regprog);