34#define EC_INTERACT_HELP_ATTR "_help"
39#define EC_INTERACT_CB_ATTR "_cb"
44#define EC_INTERACT_DESC_ATTR "_desc"
struct ec_comp * ec_comp(void)
ssize_t ec_interact_get_error_helps(const struct ec_node *node, const char *line, struct ec_interact_help **helps_out, size_t *char_idx)
int(* ec_interact_command_cb_t)(const struct ec_pnode *)
int ec_interact_print_error_helps(FILE *out, unsigned int width, const char *line, const struct ec_interact_help *helps, size_t n, size_t char_idx)
int ec_interact_set_help(struct ec_node *node, const char *help)
int ec_interact_print_helps(FILE *out, unsigned int width, const struct ec_interact_help *helps, size_t n)
int ec_interact_set_desc(struct ec_node *node, const char *desc)
ssize_t ec_interact_get_completions(const struct ec_comp *cmpl, char ***matches_out, enum ec_comp_type type_mask)
ssize_t ec_interact_get_helps(const struct ec_node *node, const char *line, struct ec_interact_help **helps_out)
int ec_interact_set_callback(struct ec_node *node, ec_interact_command_cb_t cb)
ec_interact_command_cb_t ec_interact_get_callback(struct ec_pnode *parse)
int ec_interact_print_cols(FILE *out, unsigned int width, char const *const *matches, size_t n)
char * ec_interact_append_chars(const struct ec_comp *cmpl)
void ec_interact_free_helps(struct ec_interact_help *helps, size_t n)
void ec_interact_free_completions(char **matches, size_t n)
struct ec_node * ec_node(const char *typename, const char *id)
struct ec_pnode * ec_pnode(const struct ec_node *node)