awesome-c icon indicating copy to clipboard operation
awesome-c copied to clipboard

Add libxutils

Open kala13x opened this issue 1 year ago • 4 comments

kala13x avatar Jan 24 '23 11:01 kala13x

libxutils is a cross-platform C library that provides safer implementations of various functions to make routine tasks easier for programs written in C and C-compatible languages. Some of the specific features include a dynamically allocated array with sort and search features, a byte and data buffer, a key-value pair map, a hash map, and a linked list. On the network side, the library provides an event library based on poll(), epoll(), and WSAPoll(), a socket library with TCP, UDP, and SSL support, an event-based high performance REST API client/server library, an HTTP client/server library, an MDTP client/server library, and an RTP packet parser library. Finally, the library includes cross-platform file and directory manipulation tools, a CPU affinity manipulation API, an advanced file search API, and a system time manipulation library.

kala13x avatar Jan 24 '23 11:01 kala13x

I pretty much like it, although you can add some more documentation. I'll review more thoroughly later.

oz123 avatar Jan 24 '23 12:01 oz123

@oz123, I am currently working on the documentation and decided to use Doxygen and write the description of the functions in the comments. Because the code base is very large, I won't be able to do it in a short time, but I will periodically update all the files.

Thanks for the feedback, it means a lot to me.

kala13x avatar Jan 24 '23 12:01 kala13x

Doxygen is really cool for documenting API. However, I can recommend using Sphinx with C plugins. Sphinx allows you not only to document APIs, but also to create a story and narrative for these APIs. The linux kernel and Python project both use it.

oz123 avatar Jan 24 '23 13:01 oz123