4 X evaluate expression tree in ec_tk_expr
13 X remove the _new() functions
14 - iterate children nodes without chaining them
15 - add a tk vector type: will be used in several nodes (ex: or, seq, ...)
16 - check allocation model everywhere
18 - use linux style (update .emacs)
21 - use errno when returning pointers
22 - missing static / const
23 - license: "s/neither the name...may/the names of its contributors may not/"
24 - check all completion nodes
26 - cache results when appropriate?
27 - size_t or unsigned int?
30 X ec_parsed_tk -> ec_parsed
31 X ec_completed_tk -> ec_completed
32 X tk, gen_tk, token, ... -> node
33 X tokens -> input_str / input_strvec ?
34 - use is_err() or errno for funcs returning ptrs
35 - save node path in completion to fix help string
37 - try to hide structures
38 - anything better than weakref?
39 - add get_max_parse_len() for all relevant nodes
40 - add ec_node_defaults.[ch] providing usual implementations of node methods
46 X pass the current parsed state when parsing/completing
48 - new node "condition"
58 X register nodes by name
59 - interface to add attributes: all nodes must be configurable through a
67 - yaml interface to create nodes
73 - example which parses arguments (argc/argv)
74 - example that acts as bash completion (ip link ?)
75 - calculator example (var assignation, expression evaluation)
76 - example with libedit
77 - mini script language
85 - generate automatic api doc
87 - coding rules, process
90 - say that it stops at first match (no ambigous support)
91 - say that completion must be exhaustive
97 - split libs, tests and examples
105 - complete automatic tests with "make test"
111 - node which always matches
112 - file + partial completion
114 - fusion node: need to match several children, same for completion
121 - support utf-8 and other encodings
128 - demonstration example that parses yang file and generate cli