docs/src/index.md

Tue, 04 Oct 2022 19:25:07 +0200

author
Mike Becker <universe@uap-core.de>
date
Tue, 04 Oct 2022 19:25:07 +0200
changeset 591
7df0bcaecffa
parent 390
d345541018fa
child 716
bab81cf591a5
permissions
-rw-r--r--

fix over-optimization of strstr

1. it's actually less performant to frequently read bytes
from an array instead of using the native word length
2. the SBO buffer should be local and not static to allow
multi-threading usage

264
24f5484bae97 web doc has now proper titles
Mike Becker <universe@uap-core.de>
parents: 259
diff changeset
1 ---
24f5484bae97 web doc has now proper titles
Mike Becker <universe@uap-core.de>
parents: 259
diff changeset
2 title: Overview
24f5484bae97 web doc has now proper titles
Mike Becker <universe@uap-core.de>
parents: 259
diff changeset
3 ---
259
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
4
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
5 Welcome to the UAP Common Extensions.
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
6
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
7 With this library we provide useful data structures and algorithms for common
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
8 programmatic tasks in the C language. By design the features are divided into
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
9 modules to minimize the library footprint. Using the build files you can create
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
10 a static and a shared lib containing all modules, but you may also use the UCX
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
11 sources in your project and compile specific modules by yourself to further
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
12 minimize the footprint.
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
13
333
b3ad9d1a20b7 fixes an url typo which survived surprisingly long
Mike Becker <universe@uap-core.de>
parents: 264
diff changeset
14 If you want to use this library, you can [download and install](install.html)
259
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
15 the recent version.
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
16 The source code is also available as Mercurial repository [at our site][1] and
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
17 on [Source Forge][2].
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
18
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
19 [1]: https://develop.uap-core.de/hg/ucx/
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
20 [2]: https://sourceforge.net/p/ucx/code/
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
21
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
22 ### Authors
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
23
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
24 Mike Becker [&lt;universe@uap-core.de&gt;](mailto:universe@uap-core.de)
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
25
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
26 Olaf Wintermann
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
27 [&lt;olaf.wintermann@gmail.com&gt;](mailto:olaf.wintermann@gmail.com)
386
8ebfe95077eb adds changelog to html documentation
Mike Becker <universe@uap-core.de>
parents: 333
diff changeset
28
8ebfe95077eb adds changelog to html documentation
Mike Becker <universe@uap-core.de>
parents: 333
diff changeset
29 Changelog
8ebfe95077eb adds changelog to html documentation
Mike Becker <universe@uap-core.de>
parents: 333
diff changeset
30 ---------
8ebfe95077eb adds changelog to html documentation
Mike Becker <universe@uap-core.de>
parents: 333
diff changeset
31
390
d345541018fa starts ucx 3.0 development
Mike Becker <universe@uap-core.de>
parents: 386
diff changeset
32 ### Version 3.0
d345541018fa starts ucx 3.0 development
Mike Becker <universe@uap-core.de>
parents: 386
diff changeset
33
d345541018fa starts ucx 3.0 development
Mike Becker <universe@uap-core.de>
parents: 386
diff changeset
34 * under construction...
d345541018fa starts ucx 3.0 development
Mike Becker <universe@uap-core.de>
parents: 386
diff changeset
35
386
8ebfe95077eb adds changelog to html documentation
Mike Becker <universe@uap-core.de>
parents: 333
diff changeset
36 ### Version 2.1 - 2019-12-30
8ebfe95077eb adds changelog to html documentation
Mike Becker <universe@uap-core.de>
parents: 333
diff changeset
37
8ebfe95077eb adds changelog to html documentation
Mike Becker <universe@uap-core.de>
parents: 333
diff changeset
38 * adds string replace functions
8ebfe95077eb adds changelog to html documentation
Mike Becker <universe@uap-core.de>
parents: 333
diff changeset
39 * adds set operations for ` UcxList` and `UcxMap`
8ebfe95077eb adds changelog to html documentation
Mike Becker <universe@uap-core.de>
parents: 333
diff changeset
40 * adds `sstrcaseprefix()` and `sstrcasesuffix()`
8ebfe95077eb adds changelog to html documentation
Mike Becker <universe@uap-core.de>
parents: 333
diff changeset
41 * improves Doxygen documentation in ucx/string.h
8ebfe95077eb adds changelog to html documentation
Mike Becker <universe@uap-core.de>
parents: 333
diff changeset
42 * adds `UcxArray` data type
8ebfe95077eb adds changelog to html documentation
Mike Becker <universe@uap-core.de>
parents: 333
diff changeset
43 * adds support for CMake builds, but main build system is still autotools
8ebfe95077eb adds changelog to html documentation
Mike Becker <universe@uap-core.de>
parents: 333
diff changeset
44
8ebfe95077eb adds changelog to html documentation
Mike Becker <universe@uap-core.de>
parents: 333
diff changeset
45 ### Version 2.0 - 2018-12-28
8ebfe95077eb adds changelog to html documentation
Mike Becker <universe@uap-core.de>
parents: 333
diff changeset
46
8ebfe95077eb adds changelog to html documentation
Mike Becker <universe@uap-core.de>
parents: 333
diff changeset
47 * some uncritical bug fixes
8ebfe95077eb adds changelog to html documentation
Mike Becker <universe@uap-core.de>
parents: 333
diff changeset
48 * overflow of `sstrnlen` now returns `SIZE_MAX` instead of zero
8ebfe95077eb adds changelog to html documentation
Mike Becker <universe@uap-core.de>
parents: 333
diff changeset
49 * adds `scstr_t` - a `const char*` variant for sstr_t
8ebfe95077eb adds changelog to html documentation
Mike Becker <universe@uap-core.de>
parents: 333
diff changeset
50 * renames utility compare functions
8ebfe95077eb adds changelog to html documentation
Mike Becker <universe@uap-core.de>
parents: 333
diff changeset
51
8ebfe95077eb adds changelog to html documentation
Mike Becker <universe@uap-core.de>
parents: 333
diff changeset
52 ### Version 1.1 - 2018-05-14
8ebfe95077eb adds changelog to html documentation
Mike Becker <universe@uap-core.de>
parents: 333
diff changeset
53
8ebfe95077eb adds changelog to html documentation
Mike Becker <universe@uap-core.de>
parents: 333
diff changeset
54 * adds missing 32 bit support to integer overflow checks
8ebfe95077eb adds changelog to html documentation
Mike Becker <universe@uap-core.de>
parents: 333
diff changeset
55 * adds `ucx_buffer_to_sstr()` macro
8ebfe95077eb adds changelog to html documentation
Mike Becker <universe@uap-core.de>
parents: 333
diff changeset
56 * adds `ucx_avl_free_content()`
8ebfe95077eb adds changelog to html documentation
Mike Becker <universe@uap-core.de>
parents: 333
diff changeset
57 * adds some more compare and distance functions in utils.h
8ebfe95077eb adds changelog to html documentation
Mike Becker <universe@uap-core.de>
parents: 333
diff changeset
58 * adds `SFMT()` and `PRIsstr` convenience macros
8ebfe95077eb adds changelog to html documentation
Mike Becker <universe@uap-core.de>
parents: 333
diff changeset
59 * destructor functions for `*_free_content()` functions are now optional
8ebfe95077eb adds changelog to html documentation
Mike Becker <universe@uap-core.de>
parents: 333
diff changeset
60
8ebfe95077eb adds changelog to html documentation
Mike Becker <universe@uap-core.de>
parents: 333
diff changeset
61 ### Version 1.0.1 - 2018-01-21
8ebfe95077eb adds changelog to html documentation
Mike Becker <universe@uap-core.de>
parents: 333
diff changeset
62
8ebfe95077eb adds changelog to html documentation
Mike Becker <universe@uap-core.de>
parents: 333
diff changeset
63 * some bug fixes
8ebfe95077eb adds changelog to html documentation
Mike Becker <universe@uap-core.de>
parents: 333
diff changeset
64 * adds integer overflow checks
8ebfe95077eb adds changelog to html documentation
Mike Becker <universe@uap-core.de>
parents: 333
diff changeset
65
8ebfe95077eb adds changelog to html documentation
Mike Becker <universe@uap-core.de>
parents: 333
diff changeset
66 ### Version 1.0 - 2017-10-28
8ebfe95077eb adds changelog to html documentation
Mike Becker <universe@uap-core.de>
parents: 333
diff changeset
67
8ebfe95077eb adds changelog to html documentation
Mike Becker <universe@uap-core.de>
parents: 333
diff changeset
68 * first stable version of UCX released

mercurial