ecoli_node_many(3)

πŸ“¦
version 0.11.3 Β· 2 versions
, in epel 9

πŸ’… ecoli_node_many(3)

okay so bestie, welcome to Libecoli, and specifically to ecoli_node_many(3) β€” the manual page for the Many node. yes that's the whole vibe. let's get into it πŸŽ€


✨ NAME ✨

ecoli_node_many β€” Many node

  • A node that matches its child multiple times. like, the same child, over and over. iconic repetitive queen behavior honestly πŸ”₯

🌸 SYNOPSIS 🌸

Functions

struct ec_node * ec_node_many (const char *id, struct ec_node *child,
    unsigned int min, unsigned int max)
int ec_node_many_set_params (struct ec_node *gen_node, struct ec_node
    *child, unsigned int min, unsigned int max)

πŸ¦‹ Detailed Description πŸ¦‹

A node that matches its child multiple times. that's it, that's the whole concept β€” one child node, matched again and again. lowkey elegant, highkey useful πŸ’–

🧚 Configuration Schema

schema many {
    node child  {
        description "The child node.";
    }
    uint64 min  {
        description "The minimum number of matches (default = 0).";
    }
    uint64 max  {
        description "The maximum number of matches. If 0, there is no maximum (default = 0).";
    }
}
heads up: for max, a value of 0 means there is no maximum at all β€” not "zero matches". so like, don't panic when you see it πŸ™ˆ

πŸ‘‘ Function Documentation πŸ‘‘

⭐ struct ec_node* ec_node_many (const char * id, struct ec_node * child, unsigned int min, unsigned int max)

Create a many node that matches its child multiple times. fresh node, fresh repetitive vibes, main character energy fr fr ✨

Parameters β€” the way this works:

  • id β€” The node identifier.
  • child β€” The child node. It is consumed and will be freed when the parent is freed, or immediately on error. πŸ‘€ so like, it's yours now, the parent owns it, don't go freeing it yourself, that's giving double-free disaster πŸ’€
  • min β€” Minimum number of repetitions. Use 0 for no minimum.
  • max β€” Maximum number of repetitions. Use 0 for no maximum.

Returns

The node, or NULL on error (errno is set). ngl if you get NULL back, go check errno, she's spilling the tea 🫢


⭐ int ec_node_many_set_params (struct ec_node * gen_node, struct ec_node * child, unsigned int min, unsigned int max)

Set the parameters of a many node. so if you already made the node and now you're like "wait, new parameters just dropped", this is your girl πŸ’…

Parameters:

  • gen_node β€” The many node.
  • child β€” The child node. It is consumed and will be freed when the parent is freed, or immediately on error. same rule as before bestie β€” consumed on success, and if it errors out, it gets freed right away, so don't touch it after 😭
  • min β€” Minimum number of repetitions. Use 0 for no minimum.
  • max β€” Maximum number of repetitions. Use 0 for no maximum.

Returns

0 on success, -1 on error (errno is set). classic. zero is slay, minus one is not slay 🌈


πŸ’œ Author πŸ’œ

Generated automatically by Doxygen for Libecoli from the source code. not me being auto-generated, the robots did my homework 😭🫢


🌟 and that's the whole page! shoutout to Libecoli version 0.11.3, dated Thu Apr 9 2026 β€” this manual page ate and left no crumbs. periodt. πŸ’…βœ¨πŸŽ€
πŸ“¦ where this page comes from