// retoor #ifndef R_MESSAGES_H #define R_MESSAGES_H #include "r_error.h" #include #include typedef struct messages_t *messages_handle; messages_handle messages_create(const char *session_id); void messages_destroy(messages_handle msgs); r_status_t messages_set_session_id(messages_handle msgs, const char *session_id); const char *messages_get_session_id(messages_handle msgs); r_status_t messages_add(messages_handle msgs, const char *role, const char *content); r_status_t messages_add_object(messages_handle msgs, struct json_object *message); r_status_t messages_add_tool_call(messages_handle msgs, struct json_object *message); r_status_t messages_add_tool_result(messages_handle msgs, const char *tool_call_id, const char *result); r_status_t messages_remove_last(messages_handle msgs); r_status_t messages_remove_range(messages_handle msgs, int start, int count); r_status_t messages_clear(messages_handle msgs); r_status_t messages_save(messages_handle msgs); r_status_t messages_load(messages_handle msgs); struct json_object *messages_get_object(messages_handle msgs, int index); r_status_t messages_replace_at(messages_handle msgs, int index, struct json_object *message); struct json_object *messages_to_json(messages_handle msgs); char *messages_to_string(messages_handle msgs); int messages_count(messages_handle msgs); #endif