EC_COMPLETE_STRVEC_EXPAND(3)
β¨ NAME β¨
ec_complete_strvec_expand β bestie, this one hands you a brand new string vector, built off the one you gave it, using completion to stretch out all the non-ambiguous tokens into their full value. it's giving glow-up for your tokens π
π¦ SYNOPSIS π¦
#include <ecoli/complete.h>
struct ec_strvec * ec_complete_strvec_expand(
const struct ec_node *node, /* The grammar graph. */
enum ec_comp_type type, /* Completion item type to consider. */
const struct ec_strvec *strvec /* The input string vector. */
);
like yes she takes three args, and the comments are literally right there telling you what each one is, no gatekeeping here π«Ά
nodeβ the grammar graph, aka the whole vibe map πtypeβ the completion item type you want to considerstrvecβ the input string vector, the raw material β¨
π STRUCTURES π
okay so the enum, and the semicolons are exactly how they ship, don't come for me, I'm just the messenger:
enum ec_comp_type {
EC_COMP_UNKNOWN;
EC_COMP_FULL;
EC_COMP_PARTIAL;
EC_COMP_ALL;
};
four little icons, four little moods, EC_COMP_UNKNOWN, EC_COMP_FULL, EC_COMP_PARTIAL, EC_COMP_ALL β and type up in the synopsis is picking which one of them you're rolling with π
πΈ RETURN VALUE πΈ
you get back a new string vector, with all the non-ambiguous tokens expanded. periodt. π
and if something goes wrong? you get NULL, and errno is set. so check it, bestie, don't just vibe and assume π
ngl,NULLis the "it's not giving" outcome here. always checkerrnowhen you see it.
π SEE ALSO π
the whole friend group, all of them, no one left out, we don't do that here:
ec_comp_add_item(3)ec_comp_count(3)ec_comp_item_set_str(3)ec_complete(3)ec_comp_get_attrs(3)ec_comp_group_get_attrs(3)ec_comp_iter_next(3)ec_comp_item_get_node(3)ec_comp_iter_first(3)ec_comp_item_get_current(3)ec_comp_group_get_node(3)ec_comp_free(3)ec_comp_get_cur_pstate(3)ec_complete_unknown(3)ec_complete_strvec(3)ec_comp_item_get_grp(3)ec_comp_item_get_type(3)ec_comp_item_get_str(3)ec_comp_item_set_display(3)ec_complete_child(3)ec_comp(3)ec_comp_item_get_display(3)ec_comp_item_get_completion(3)ec_comp_group_get_pstate(3)ec_comp_dump(3)ec_comp_merge(3)ec_comp_item_set_completion(3)ec_comp_get_cur_group(3)
iykyk π₯
π COPYRIGHT π
Copyright (C) 2010-2026 Olivier Matz, Robin Jarry.
okay that's the whole page, and here's the cute lil sign-off: this one lives in the libecoli Programmer's Manual, dated 2026-06-11, and it's the EC_COMPLETE_STRVEC_EXPAND(3) page π thanks for reading, go expand some tokens, you ate πβ¨
π¦ where this page comes from
- fedora 44: libecoli-devel 0.11.7-1.fc44 Β· BSD-3-Clause AND LicenseRef-Fedora-Public-Domain
- fedora 44: libecoli-devel 0.11.7-1.fc44 Β· BSD-3-Clause AND LicenseRef-Fedora-Public-Domain
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms