int main(int argc, char **argv) { t_env e; int i_x; int i_y; i_x = WIN_X * 2 / 5; i_y = WIN_Y * 2 / 5; if (argc == 2) { ft_parse(&e, argv[1]); ft_drawsettings(&e); e.mlx = mlx_init(); e.win = mlx_new_window(e.mlx, WIN_X, WIN_Y, "mlx42"); e.im = mlx_new_image(e.mlx, WIN_X, WIN_Y); e.imc = mlx_get_data_addr(e.im, &e.bpp, &e.imlen, &e.endi); mlx_string_put(e.mlx, e.win, i_x, i_y, 0xccccff, WELCOME); mlx_string_put(e.mlx, e.win, i_x + 16, i_y + 20, 0xccccff, START); mlx_hook(e.win, KEYPRESS, KEYPRESSMASK, ft_key_settings, &e); mlx_loop(e.mlx); } else ft_error("error : invalid number of arguments"); return (0); }
void display_prompt(t_env *env) { char *line; pid_t papa; ft_putstr("\033[1;1H\033[2J"); ft_prompt(env); while (42) { if (get_next_line(0, &line) > 0) { line = ft_strtrim(line); line = ft_supertrim(line); if (is_multi(line, &env) == 0 && is_builtin(line, &env) == 0) { papa = sh_fork(); if (papa == 0) ft_parse(env, &line); else wait(0); } free(line); line = NULL; ft_prompt(env); } } }
t_lenv *core(t_lenv *env, char *line) { char **param; g_bool = 0; param = ft_split_whitespaces(line); if (param[0] && check_param(param[0]) == 0) exec_core(env, param); else if (param[0] && check_param(param[0]) == 1) env = ft_parse(env, param); if (g_bool != 2) print_prompt(); g_bool = 0; return (env); }
uint _mi_ft_parse(TREE *parsed, MI_INFO *info, uint keynr, const byte *record, my_bool with_alloc) { FT_SEG_ITERATOR ftsi; DBUG_ENTER("_mi_ft_parse"); _mi_ft_segiterator_init(info, keynr, record, &ftsi); ft_parse_init(parsed, info->s->keyinfo[keynr].seg->charset); while (_mi_ft_segiterator(&ftsi)) { if (ftsi.pos) if (ft_parse(parsed, (byte *)ftsi.pos, ftsi.len, with_alloc)) DBUG_RETURN(1); } DBUG_RETURN(0); }
int main(int argc, char **argv) { t_en e; if (argc != 2) ft_putendl("error"); if (argc != 2) return (0); ft_ini(&e); ft_parse(argv[1], &e); draw(&e); // mlx_put_image_to_window(e.mlx, e.win_para, e.img_para, 0, 0); mlx_hook(e.win_para, 2, 3, key, &e); mlx_hook(e.win_iso, 2, 3, key, &e); mlx_loop_hook(e.mlx, (void *)draw, &e); mlx_loop(e.mlx); return (0); }
uint _mi_ft_parse(TREE *parsed, MI_INFO *info, uint keynr, const uchar *record, MYSQL_FTPARSER_PARAM *param, MEM_ROOT *mem_root) { FT_SEG_ITERATOR ftsi; struct st_mysql_ftparser *parser; DBUG_ENTER("_mi_ft_parse"); _mi_ft_segiterator_init(info, keynr, record, &ftsi); ft_parse_init(parsed, info->s->keyinfo[keynr].seg->charset); parser= info->s->keyinfo[keynr].parser; while (_mi_ft_segiterator(&ftsi)) { if (ftsi.pos) if (ft_parse(parsed, (uchar *)ftsi.pos, ftsi.len, parser, param, mem_root)) DBUG_RETURN(1); } DBUG_RETURN(0); }
static int ft_iniglobal(const char *format, t_glob **global) { t_glob *new_glob; if (!(*global = (t_glob*)malloc(sizeof(t_glob)))) return (-1); new_glob = *global; if (!(new_glob->first = (t_list*)malloc(sizeof(t_list)))) return (-1); if (!(new_glob->option = ft_strdup("sSpdiDoOuUxXcC"))) return (-1); if (!(new_glob->flags_off = ft_strdup("#0-+ ."))) return (-1); if (!(new_glob->conv_off = ft_strdup("hljz"))) return (-1); if (ft_parse(format, new_glob, new_glob->first) < 0) return (-1); return (0); }
void ft_read3(t_env *e, int s, t_play *p) { char buf[BUF_SIZE]; int r; (void)e; r = recv(s, buf, BUF_SIZE, 0); if (r <= 0) { exit(0); } if (!strncmp("BIENVENUE\n", buf, 10)) { send(s, p->client.name, strlen(p->client.name), 0); p->action = add_act(p->client.name, p->action); p->auth++; } ft_parse(buf, s, p, e); ft_bzero(buf, r); }
// This test excercises the phrase matching in particular, and contains in general. void test_contains_phrase_match () { int i, iter; unsigned int word_len, j; TCHAR doc[1000]; TCHAR *doc1, *doc2; TCHAR free_text_str[35] = {'\0'}; TCHAR *free_text; ft_doc_index *index; token *tokens; syntree *ft_pred; for (iter = 0; iter < 5; iter++) { doc1 = doc; i = 0; while (i < 999) { word_len = (unsigned int)(tm_random()*7.0 + 1.0); for (j=0; j < word_len && i < 999; j++, i++) { doc[i] = get_random_alphabet(); } if (i < 999) { doc[i++] = _TEXT(' '); } } doc[i] = _TEXT('\0'); index = ft_doc_index_new (doc); while (get_next_word_from_doc (&doc1, &word_len) != DONE) { // Don't put first word as stop word. if (is_stop_word_with_len (doc1, word_len)) { doc1 += word_len; continue; } free_text = free_text_str; _stprintf (free_text, "\""); _sntprintf (free_text + 1, word_len+1, "%s", doc1); doc1 += word_len; free_text += word_len+1; doc2 = doc1; if (get_next_word_from_doc (&doc2, &word_len) != DONE) { if (!is_stop_word_with_len (doc2, word_len)) { _sntprintf (free_text,word_len+2, " %s", doc2); free_text += word_len+1; } doc2 += word_len; } if (get_next_word_from_doc (&doc2, &word_len) != DONE) { if (!is_stop_word_with_len (doc2, word_len)) { _sntprintf (free_text,word_len+2, " %s", doc2); free_text += word_len+1; } } _stprintf (free_text, "\""); tokens = ft_lex (free_text_str); if (tokens != NULL) { ft_pred = ft_parse (tokens); if (ft_pred) { ASSERT (evaluate_contains (index, ft_pred) > 0.0); } free_tokens (tokens); cond_del (ft_pred); } } tman_delete (index); } }