Lines Matching refs:match
122 register Suftree *match, *clocus, *locus, *link;
150 /* the current match length */
189 rescan must match a prefix of that child.
191 match = child_find(link,*rescan);
192 /**/ ASSERT(match != NULL)
197 /* rescan contains LABEL(match) */
198 if(relen >= LENGTH(match))
200 link = match;
201 relen -= LENGTH(match);
202 rescan += LENGTH(match);
204 /* rescan is a proper prefix of LABEL(match) */
217 CHILD(list) = match;
218 SIBLING(list) = SIBLING(match);
222 SIBLING(match) = 0;
223 LABEL(match) += relen;
224 LENGTH(match) -= relen;
236 /* scan to match as much as possible */
242 if(!(match = child_find(locus,*sp)))
248 /* find the extend of the match */
249 mp = LABEL(match);
250 endmatch = mp + LENGTH(match);
258 locus = match;
259 mtlen += LENGTH(match);
272 LABEL(list) = LABEL(match);
273 LENGTH(list) = mp - LABEL(match);
274 CHILD(list) = match;
275 SIBLING(list) = SIBLING(match);
278 SIBLING(match) = 0;
279 LABEL(match) += LENGTH(list);
280 LENGTH(match) -= LENGTH(list);
312 match the string against the tree to find a longest matching
314 Return the length of the match and where it occurs in the
319 register Suftree *match;
327 if(!(match = child_find(tree,*str)))
330 /* find the extent of the match */
331 mp = LABEL(match);
332 endmp = mp + LENGTH(match);
337 /* update the length of the match */
341 tree = match;
349 if(mlen == 0) /* no match */
353 /* find where the match starts */