Lines Matching defs:metarule

25  * make metarule routines
31 * return a pointer to the metarule that builds
32 * a file that matches the metarule pattern out from
33 * a file that matches the metarule pattern in
38 metarule(char* in, char* out, int force)
76 * metarule supplementary info
94 sfprintf(internal.met, "%s.%c.%s%s%s", internal.metarule->name, type, s1 ? s1 : null, s2 ? ">" : null, s2 ? s2 : null);
108 * we do case insensitive metarule pattern matching for all patterns that
125 * match s against metarule pattern
220 * expand the metarule pattern p into sp using stem
239 * update the metarule closure graph
267 addprereq(internal.metarule, out, c == PREREQ_DELETE ? c : PREREQ_LENGTH);
272 for (q = internal.metarule->prereqs; q; q = q->next)
280 x = metarule(in->name, z->name, 1);
293 s = ((y = metarule(q->rule->name, z->name, 0)) && y->uname) ? y->uname : q->rule->name;
308 x = metarule(p->rule->name, z->name, 1);
325 x = metarule(z->name, out->name, 1);
347 * return the primary metarule source that generates r
348 * *meta is the matching metarule
395 debug((-9, "check explicit constrained metarule prerequisites"));
398 for (p = internal.metarule->prereqs; p; p = p->next)
403 if (metamatch(t, unbound(q->rule), v->rule->name) && streq(t, stem) && (m = metarule(v->rule->name, p->rule->name, 0)) && (!(r->property & P_terminal) || (m->property & P_terminal)))
425 debug((-9, "check implicit constrained metarule prerequisites"));
427 for (p = internal.metarule->prereqs; p; p = p->next)
430 if ((m = metarule(q->rule->name, p->rule->name, 0)) && (!(r->property & P_terminal) || (m->property & P_terminal)) && !(m->property & f))
490 if (metarule(v->rule->name, NiL, 0))
530 if (m = metarule(p->rule->name, NiL, 0))
544 if ((m = metarule(p->rule->name, NiL, 0)) && (!(r->property & P_terminal) || (m->property & P_terminal)) && !(m->property & f))
556 * nonterminals skipped if r matched any constrained metarule target
581 debug((-9, "check explicit nonterminal unconstrained metarule prerequisites"));
584 if (m = metarule(p->rule->name, NiL, 0))
597 debug((-9, "check implicit nonterminal unconstrained metarule prerequisites"));
599 if (m = metarule(q->rule->name, NiL, 0))
630 * no metarule match
654 * metarule intermediate prerequisite
657 if (!(x = metarule(m->uname, p->rule->name, 0)) || x->uname)
662 if (metamatch(stem, u, q->rule->name) && (x = metarule(m->uname, q->rule->name, 0)))