From 53aaa97014e43cbddee5fba3d3de5fde9aea98be Mon Sep 17 00:00:00 2001 From: CismonX Date: Wed, 10 Mar 2021 10:05:38 +0800 Subject: [PATCH] Add API reference in documentation. --- doc/ctlseqs.texi | 70 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) diff --git a/doc/ctlseqs.texi b/doc/ctlseqs.texi index 470fd2b..bd58d12 100644 --- a/doc/ctlseqs.texi +++ b/doc/ctlseqs.texi @@ -361,6 +361,76 @@ const char *patterns[] = @{ @node API Reference @appendix API Reference +This appendix section contains a complete list of functions exposed by ctlseqs, +which is meant for a TL;DR purpose. See the corresponding man(3) pages for +concise details. + +Initialize matcher: + +@example +struct ctlseqs_matcher *ctlseqs_matcher_init(void); +@end example + +Configure matcher: + +@example +int ctlseqs_matcher_config( + struct ctlseqs_matcher *matcher, + struct ctlseqs_matcher_options const *options); +@end example + +Match string: + +@example +ssize_t ctlseqs_match( + struct ctlseqs_reader const *matcher, + char const *str, + size_t str_len, + union ctlseqs_value *result); +@end example + +Destroy matcher: + +@example +void ctlseqs_matcher_free(struct ctlseqs_matcher *matcher); +@end example + +Initialize reader: + +@example +struct ctlseqs_reader *ctlseqs_reader_init(void); +@end example + +Configure reader: + +@example +int ctlseqs_reader_config( + struct ctlseqs_reader *reader, + struct ctlseqs_reader_options const *options); +@end example + +Read and match: + +@example +ssize_t ctlseqs_read( + struct ctlseqs_reader *reader, + struct ctlseqs_matcher const *matcher, + int timeout); +@end example + +Purge reader: + +@example +void ctlseqs_purge( + struct ctlseqs_reader *reader, + size_t nbytes); +@end example + +Destroy reader: + +@example +void ctlseqs_reader_free(struct ctlseqs_reader *reader); +@end example @node GNU Free Documentation License @appendix GNU Free Documentation License