Lines Matching defs:dep
713 bool expr_contains_symbol(struct expr *dep, struct symbol *sym)
715 if (!dep)
718 switch (dep->type) {
721 return expr_contains_symbol(dep->left.expr, sym) ||
722 expr_contains_symbol(dep->right.expr, sym);
724 return dep->left.sym == sym;
731 return dep->left.sym == sym ||
732 dep->right.sym == sym;
734 return expr_contains_symbol(dep->left.expr, sym);
747 bool expr_contains_symbol_negated(struct expr *dep, struct symbol *sym)
749 if (!dep)
752 switch (dep->type) {
755 return expr_contains_symbol_negated(dep->left.expr, sym) ||
756 expr_contains_symbol_negated(dep->right.expr, sym);
758 return dep->left.expr->type == E_SYMBOL &&
759 dep->left.expr->left.sym == sym;
762 return dep->left.sym == sym && dep->right.sym == &symbol_no;
765 return dep->left.sym == sym &&
766 (dep->right.sym == &symbol_yes ||
767 dep->right.sym == &symbol_mod);
774 bool expr_depends_symbol(struct expr *dep, struct symbol *sym)
776 if (!dep)
779 switch (dep->type) {
781 return expr_depends_symbol(dep->left.expr, sym) ||
782 expr_depends_symbol(dep->right.expr, sym);
784 return dep->left.sym == sym;
786 if (dep->left.sym == sym) {
787 if (dep->right.sym == &symbol_yes || dep->right.sym == &symbol_mod)
792 if (dep->left.sym == sym) {
793 if (dep->right.sym == &symbol_no)