/* By: ljiriste <ljiriste@student.42prague.com> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/05/20 20:51:36 by ljiriste #+# #+# */
-/* Updated: 2024/06/15 10:06:32 by ljiriste ### ########.fr */
+/* Updated: 2024/06/15 14:32:50 by ljiriste ### ########.fr */
/* */
/* ************************************************************************** */
while (i < tokens->size)
{
token = (t_token *)ft_vec_access(tokens, i);
- if (ft_strcmp(token->type, "$"))
+ if (!ft_strcmp(token->type, "$"))
return (i + 1);
++i;
}
if (!token.type || ft_vec_append(&tokens, &token) != success)
{
free(token.type);
+ free(condensed_line);
ft_vec_free(&tokens, free_token);
return (tokens);
}
+ ++i;
}
+ free(condensed_line);
return (tokens);
}
if (load_rules(&table.rules, rules_filename))
return (table);
fd = open(filename, O_RDONLY);
- if (fd < 0 ||
- ft_vec_init(&table.rules, sizeof(t_grammar_rule)) ||
- ft_vec_init(&table.states, sizeof(t_parser_state)) ||
- load_rules(&table.rules, rules_filename))
+ if (fd < 0)
return (table);
line = get_next_line(fd);
table.tokens = parse_header(line);