/* * Copyright Luka Jankovic 2025 * * This file is part of Kubo. * * Kubo is free software: you can redistribute it and/or modify it under the * terms of the GNU General Public License as published by the Free Software * Foundation, either version 3 of the License, or (at your option) any later * version. * * Kubo is distributed in the hope that it will be useful, but WITHOUT ANY * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR * A PARTICULAR PURPOSE. See the GNU General Public License for more details. * * You should have received a copy of the GNU General Public License along with * Kubo. If not, see . */ #ifndef KUBO_COMMAND_H #define KUBO_COMMAND_H #include #include #include "kubo_char_arr.h" #include "kubo_context.h" #include "kubo_file.h" typedef void (*kubo_command_function)(struct kubo_context *context, char *rest); struct kubo_command_data { const char *input; kubo_command_function function; }; void kubo_command_init(); void kubo_command_cleanup(); void kubo_command_append_char(int c); void kubo_command_pop(); void kubo_command_accept_cmd(struct kubo_context *context); void kubo_command_clear(); char *kubo_command_get_str(); #endif