libxkbcommon/bench
Ran Benita a17701327e Compose: add iterator API
Allow users to iterate the entries in a compose table. This is useful
for other projects which want programmable access to the sequences,
without having to write their own parser.

- New API:
  - `xkb_compose_table_entry_sequence`;
  - `xkb_compose_table_entry_keysym`;
  - `xkb_compose_table_entry_utf8`;
  - `xkb_compose_table_iterator_new`;
  - `xkb_compose_table_iterator_free`;
  - `xkb_compose_table_iterator_next`.
- Add tests in `test/compose.c`.
- Add benchmark for compose traversal.
- `tools/compose.c`:
  - Print entries instead of just validating them.
  - Add `--file` option.
  - TODO: make this tool part of the xkbcli commands.

Co-authored-by: Pierre Le Marre <dev@wismill.eu>
Co-authored-by: Ran Benita <ran@unusedvar.com>
Signed-off-by: Ran Benita <ran@unusedvar.com>
2023-09-26 09:02:45 +02:00
..
atom.c bench: add atom benchmark 2021-04-27 16:41:32 +03:00
bench.c Possible fix for non-MSVC windows compilers 2023-04-11 23:29:25 +03:00
bench.h bench: simplify the bench helpers 2018-07-05 18:29:39 +03:00
compose-traversal.c Compose: add iterator API 2023-09-26 09:02:45 +02:00
compose.c bench/compose: fix compose file path 2021-06-10 17:13:57 +03:00
key-proc.c test/atom: use correct format specifier for size_t 2019-12-28 14:13:52 +02:00
rules.c bench: silence coverity complaint about a double free 2021-03-19 23:44:30 +02:00
rulescomp.c bench/rulescomp: decrease benchmark iterations 2021-04-27 12:32:21 +03:00
x11.c x11: cache X11 atoms 2020-11-20 13:04:21 +02:00