Lines Matching refs:match

61 	Match_t		match[7];
173 *z = state.match[n].length;
174 return (char*)state.match[n].string;
178 * match tail pattern t to s
198 return (s - b) + (state.match[state.matched].length = strlen(state.match[state.matched].string = s));
210 state.match[state.matched].length = u - s;
211 state.match[state.matched].string = s;
225 * longest matching prefix match function
230 match(const char* name)
246 state.match[0].string = name;
251 if (state.match[state.matched].map)
255 if (!(mp = (Map_t*)dtprev(state.match[state.matched].map, &map)))
256 mp = (Map_t*)dtfirst(state.match[state.matched].map);
257 for (; mp && mp->same >= i; mp = (Map_t*)dtnext(state.match[state.matched].map, mp))
265 message((-9, "match[%d] %s %s %d", state.matched, name, mp->prefix, mp->length));
283 if (state.match[state.matched].all)
290 if (state.match[state.matched].all)
294 state.match[state.matched].string = name;
295 n += (state.match[state.matched].length = s - name) + 1;
300 state.match[0].length = strlen(state.match[0].string);
301 mp = state.match[all].all;
306 state.match[1].string = state.match[0].string;
307 state.match[1].length = state.match[0].length;
311 state.match[1].string = state.match[0].string;
312 mp->length = state.match[1].length = state.match[0].length;
315 state.match[all].length = strlen(state.match[all].string = state.match[all-1].string + state.match[all-1].length + 1);
463 if (k >= elementsof(state.match))
466 (*disc->errorf)(NiL, disc, 2, "%s: %s: only %d *. prefixes supported", op, arg[0], elementsof(state.match) - 1);
488 if (!state.match[k].map)
494 if (!(state.match[k].map = dtopen(&state.mapdisc, Dtoset)))
502 c = dtmatch(state.match[k].map, s) != 0;
516 if (state.match[k].all)
543 dtinsert(state.match[k].map, mp);
545 state.match[k].all = mp;
595 if (state.match[k].map)
596 for (pp = 0, mp = (Map_t*)dtfirst(state.match[k].map); mp; pp = mp, mp = (Map_t*)dtnext(state.match[k].map, mp))
604 if (mp = state.match[k].all)
643 if (*name != '/' && (*name != '.' || *(name + 1) != '/') && state.mapped && (m = match(name)))
661 message((-7, "match %s => %s", oname, name));