Lines Matching refs:fn
1053 void expr_print(struct expr *e, void (*fn)(void *, struct symbol *, const char *), void *data, int prevtoken)
1056 fn(data, NULL, "y");
1061 fn(data, NULL, "(");
1065 fn(data, e->left.sym, e->left.sym->name);
1067 fn(data, NULL, "<choice>");
1070 fn(data, NULL, "!");
1071 expr_print(e->left.expr, fn, data, E_NOT);
1075 fn(data, e->left.sym, e->left.sym->name);
1077 fn(data, NULL, "<choice>");
1078 fn(data, NULL, "=");
1079 fn(data, e->right.sym, e->right.sym->name);
1083 fn(data, e->left.sym, e->left.sym->name);
1085 fn(data, NULL, "<choice>");
1086 fn(data, NULL, "!=");
1087 fn(data, e->right.sym, e->right.sym->name);
1090 expr_print(e->left.expr, fn, data, E_OR);
1091 fn(data, NULL, " || ");
1092 expr_print(e->right.expr, fn, data, E_OR);
1095 expr_print(e->left.expr, fn, data, E_AND);
1096 fn(data, NULL, " && ");
1097 expr_print(e->right.expr, fn, data, E_AND);
1100 fn(data, e->right.sym, e->right.sym->name);
1102 fn(data, NULL, " ^ ");
1103 expr_print(e->left.expr, fn, data, E_LIST);
1107 fn(data, NULL, "[");
1108 fn(data, e->left.sym, e->left.sym->name);
1109 fn(data, NULL, " ");
1110 fn(data, e->right.sym, e->right.sym->name);
1111 fn(data, NULL, "]");
1117 fn(data, NULL, buf);
1122 fn(data, NULL, ")");