#ifndef ECEX_COMPLETION_H #define ECEX_COMPLETION_H #include typedef struct ecex_completion_item { char *value; int score; int is_dir; size_t order; } ecex_completion_item_t; int ecex_ascii_strncasecmp(const char *a, const char *b, size_t n); int ecex_ascii_contains_ci(const char *haystack, const char *needle); int ecex_fuzzy_score(const char *candidate, const char *query); int ecex_completion_item_compare(const void *a, const void *b); void ecex_completion_items_free(ecex_completion_item_t *items, size_t count); #endif