Lines Matching defs:plan
56 * destructively removes the top from the plan
61 PLAN *node; /* top node removed from the plan */
72 * Removes one expression from the plan. This is used mainly by
84 /* first pull the top node from the plan */
126 * replaces "parenthesized" plans in our search plan with "expr" nodes.
129 paren_squish(PLAN *plan)
132 PLAN *tail; /* pointer to tail of result plan */
133 PLAN *result; /* pointer to head of result plan */
141 while ((expr = yankexpr(&plan)) != NULL) {
149 /* add the expression to our result plan */
163 * compresses "!" expressions in our search plan.
166 not_squish(PLAN *plan)
170 PLAN *tail; /* pointer to tail of result plan */
171 PLAN *result; /* pointer to head of result plan */
175 while ((next = yanknode(&plan))) {
191 node = yanknode(&plan);
194 node = yanknode(&plan);
212 /* add the node to our result plan */
226 * compresses -o expressions in our search plan.
229 or_squish(PLAN *plan)
232 PLAN *tail; /* pointer to tail of result plan */
233 PLAN *result; /* pointer to head of result plan */
237 while ((next = yanknode(&plan)) != NULL) {
250 * if we encounter an or, then place our collected plan in the
258 next->p_data[1] = or_squish(plan);
264 /* add the node to our result plan */