Mercurial > libbuf
annotate README.md @ 37:ab071d485d38 default tip @
misc: update copyright years
author | David Demelier <markand@malikania.fr> |
---|---|
date | Thu, 04 Jan 2024 10:42:26 +0100 |
parents | 57c06f7b7d01 |
children |
rev | line source |
---|---|
0 | 1 libbuf |
2 ====== | |
3 | |
4 Minimalist dynamic string library for C99. | |
5 | |
6 Documentation | |
7 ------------- | |
8 | |
18
7f5b3f035bef
misc: update before 0.2.0
David Demelier <markand@malikania.fr>
parents:
7
diff
changeset
|
9 See the `libbuf.3` manual page for an overview. |
0 | 10 |
11 Portability | |
12 ----------- | |
13 | |
14 The code itself is compatible with any compiler that provides C99 support at | |
15 least but should also support the POSIX `ENOMEM` constant. If not present on | |
16 your system you should never check global `errno` value while using this | |
17 function. | |
18 | |
19 It was tested on: | |
20 | |
21 - MinGW-w64, | |
22 - Visual Studio 2019, | |
23 - macOS Catalina (10.15.7), | |
24 - Linux (musl, glibc), | |
25 - FreeBSD, | |
26 - OpenBSD, | |
27 - NetBSD. | |
28 | |
7 | 29 API compatibility |
30 ----------------- | |
31 | |
32 The library follows strictly [semantic versioning][semver]. | |
33 | |
0 | 34 FAQ |
35 --- | |
36 | |
37 ### Why another library? | |
38 | |
39 Sure there are a lot of string management libraries out there but I wanted a | |
40 very minimal one that does not include fancy things like trim, split, tokenizer | |
41 and such. This library only exposes 13 functions to the user which should be | |
42 enough. | |
43 | |
44 At the time of writing it's also less than 350 lines of code. | |
45 | |
46 Also, I wanted a library easy to embed everywhere without a complicated build | |
31
57c06f7b7d01
misc: update README.md
David Demelier <markand@malikania.fr>
parents:
23
diff
changeset
|
47 process. This library can be bundled in your project by just copying buf.c and |
57c06f7b7d01
misc: update README.md
David Demelier <markand@malikania.fr>
parents:
23
diff
changeset
|
48 buf.h without any modification. |
0 | 49 |
5 | 50 ### Why not using `open_memstream`? |
51 | |
52 It's a POSIX function that is not available on every operating system, but if | |
53 you don't care about portability you can obviously stick with it. | |
54 | |
0 | 55 Author |
56 ------ | |
57 | |
58 David Demelier <markand@malikania.fr> | |
7 | 59 |
60 [semver]: https://semver.org |