Lines Matching refs:expr
104 static struct expr *rewrite_m(struct expr *e) in rewrite_m()
111 e = expr_alloc_one(E_NOT, rewrite_m(e->left.expr)); in rewrite_m()
116 rewrite_m(e->left.expr), in rewrite_m()
117 rewrite_m(e->right.expr)); in rewrite_m()
130 void menu_add_dep(struct expr *dep) in menu_add_dep()
151 static struct property *menu_add_prop(enum prop_type type, struct expr *expr, in menu_add_prop() argument
152 struct expr *dep) in menu_add_prop()
162 prop->expr = expr; in menu_add_prop()
163 prop->visible.expr = dep; in menu_add_prop()
180 struct expr *dep) in menu_add_prompt()
200 prop->visible.expr = expr_alloc_and(prop->visible.expr, in menu_add_prompt()
211 void menu_add_visibility(struct expr *expr) in menu_add_visibility() argument
214 expr); in menu_add_visibility()
217 void menu_add_expr(enum prop_type type, struct expr *expr, struct expr *dep) in menu_add_expr() argument
219 menu_add_prop(type, expr, dep); in menu_add_expr()
222 void menu_add_symbol(enum prop_type type, struct symbol *sym, struct expr *dep) in menu_add_symbol()
243 prop->expr->type != E_SYMBOL) in sym_check_prop()
247 if (prop->expr->type != E_SYMBOL) in sym_check_prop()
285 if (!menu_validate_number(sym, prop->expr->left.sym) || in sym_check_prop()
286 !menu_validate_number(sym, prop->expr->right.sym)) in sym_check_prop()
300 struct expr *basedep, *dep, *dep2; in _menu_finalize()
359 dep = rewrite_m(prop->visible.expr); in _menu_finalize()
363 prop->visible.expr = dep; in _menu_finalize()
371 es->rev_dep.expr = expr_alloc_or(es->rev_dep.expr, in _menu_finalize()
375 es->implied.expr = expr_alloc_or(es->implied.expr, in _menu_finalize()
410 basedep = parent->prompt ? parent->prompt->visible.expr : NULL; in _menu_finalize()
417 dep = menu->prompt ? menu->prompt->visible.expr : menu->dep; in _menu_finalize()
454 sym->dir_dep.expr = expr_alloc_or(sym->dir_dep.expr, parent->dep); in _menu_finalize()
554 visible = menu->prompt->visible.tri = expr_calc_value(menu->prompt->visible.expr); in menu_is_visible()
616 static void get_dep_str(struct gstr *r, const struct expr *expr, in get_dep_str() argument
619 if (!expr_is_yes(expr)) { in get_dep_str()
621 expr_gstr_print(expr, r); in get_dep_str()
649 if (!expr_eq(prop->menu->dep, prop->visible.expr)) in get_prompt_str()
650 get_dep_str(r, prop->visible.expr, " Visible if: "); in get_prompt_str()
702 expr_gstr_print(prop->expr, r); in get_symbol_props_str()
725 expr_gstr_print(prop->expr, r); in get_symbol_str()
747 if (sym->rev_dep.expr) { in get_symbol_str()
748 expr_gstr_print_revdep(sym->rev_dep.expr, r, yes, "Selected by [y]:\n"); in get_symbol_str()
749 expr_gstr_print_revdep(sym->rev_dep.expr, r, mod, "Selected by [m]:\n"); in get_symbol_str()
750 expr_gstr_print_revdep(sym->rev_dep.expr, r, no, "Selected by [n]:\n"); in get_symbol_str()
754 if (sym->implied.expr) { in get_symbol_str()
755 expr_gstr_print_revdep(sym->implied.expr, r, yes, "Implied by [y]:\n"); in get_symbol_str()
756 expr_gstr_print_revdep(sym->implied.expr, r, mod, "Implied by [m]:\n"); in get_symbol_str()
757 expr_gstr_print_revdep(sym->implied.expr, r, no, "Implied by [n]:\n"); in get_symbol_str()