Esempio n. 1
0
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);
}
Esempio n. 2
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);
		}
	}
}
Esempio n. 3
0
File: core.c Progetto: qmuntada/sh1
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);
}
Esempio n. 4
0
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);
}
Esempio n. 5
0
File: main.c Progetto: apellicc/fdf
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);
}
Esempio n. 7
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);
}
Esempio n. 8
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);
}
Esempio n. 9
0
// 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);
	}
}