Lines Matching refs:expr
82 static struct expr *menu_check_dep(struct expr *e) in menu_check_dep()
89 e->left.expr = menu_check_dep(e->left.expr); in menu_check_dep()
93 e->left.expr = menu_check_dep(e->left.expr); in menu_check_dep()
94 e->right.expr = menu_check_dep(e->right.expr); in menu_check_dep()
107 void menu_add_dep(struct expr *dep) in menu_add_dep()
127 struct property *menu_add_prop(enum prop_type type, char *prompt, struct expr *expr, struct expr *d… in menu_add_prop() argument
132 prop->expr = expr; in menu_add_prop()
133 prop->visible.expr = menu_check_dep(dep); in menu_add_prop()
151 prop->visible.expr in menu_add_prop()
152 = expr_alloc_and(prop->visible.expr, in menu_add_prop()
164 struct property *menu_add_prompt(enum prop_type type, char *prompt, struct expr *dep) in menu_add_prompt()
169 void menu_add_visibility(struct expr *expr) in menu_add_visibility() argument
172 expr); in menu_add_visibility()
175 void menu_add_expr(enum prop_type type, struct expr *expr, struct expr *dep) in menu_add_expr() argument
177 menu_add_prop(type, NULL, expr, dep); in menu_add_expr()
180 void menu_add_symbol(enum prop_type type, struct symbol *sym, struct expr *dep) in menu_add_symbol()
192 prop->expr = expr_alloc_symbol(current_entry->sym); in menu_add_option()
220 prop->expr->type != E_SYMBOL) in sym_check_prop()
224 if (prop->expr->type != E_SYMBOL) in sym_check_prop()
252 if (!menu_validate_number(sym, prop->expr->left.sym) || in sym_check_prop()
253 !menu_validate_number(sym, prop->expr->right.sym)) in sym_check_prop()
267 struct expr *parentdep, *basedep, *dep, *dep2, **ep; in menu_finalize()
290 parentdep = parent->prompt->visible.expr; in menu_finalize()
306 dep = expr_transform(prop->visible.expr); in menu_finalize()
311 prop->visible.expr = dep; in menu_finalize()
314 es->rev_dep.expr = expr_alloc_or(es->rev_dep.expr, in menu_finalize()
322 basedep = parent->prompt ? parent->prompt->visible.expr : NULL; in menu_finalize()
327 dep = menu->prompt ? menu->prompt->visible.expr : menu->dep; in menu_finalize()
353 sym->dir_dep.expr = expr_alloc_or(sym->dir_dep.expr, parent->dep); in menu_finalize()
384 prop->visible.expr = expr_alloc_and(expr_copy(basedep), in menu_finalize()
385 prop->visible.expr); in menu_finalize()
390 for (ep = &prop->expr; *ep; ep = &(*ep)->left.expr) in menu_finalize()
420 sym->rev_dep.expr = expr_alloc_or(sym->rev_dep.expr, in menu_finalize()
421 expr_alloc_and(parent->prompt->visible.expr, in menu_finalize()
452 visible = menu->prompt->visible.tri = expr_calc_value(menu->prompt->visible.expr); in menu_is_visible()
518 if (!expr_is_yes(prop->visible.expr)) { in get_prompt_str()
520 expr_gstr_print(prop->visible.expr, r); in get_prompt_str()
554 expr_gstr_print(prop->expr, r); in get_symbol_str()
568 expr_gstr_print(prop->expr, r); in get_symbol_str()
572 if (sym->rev_dep.expr) { in get_symbol_str()
574 expr_gstr_print(sym->rev_dep.expr, r); in get_symbol_str()