43 lines
1.0 KiB
Markdown
43 lines
1.0 KiB
Markdown
|
# libscheaders — Grab bag of header-only C++ functionality
|
||
|
|
||
|
## Build
|
||
|
|
||
|
Headers only, so: no build step!
|
||
|
|
||
|
## Install
|
||
|
|
||
|
`sudo make install`
|
||
|
|
||
|
or, on OpenBSD:
|
||
|
|
||
|
`doas gmake install`
|
||
|
|
||
|
## Documentation
|
||
|
|
||
|
In progress.
|
||
|
|
||
|
Currently, there are 4 headers:
|
||
|
|
||
|
functools.hpp
|
||
|
|
||
|
: Contains nestable versions of the functional programming triad `map`,
|
||
|
`filter`, and `reduce`. Whereas the C++ Standard Library algorithms can handle
|
||
|
different containers, as usual, these versions only work with `std::vector`,
|
||
|
with the specific feature that they can be nested.
|
||
|
|
||
|
integer_locale.hpp
|
||
|
|
||
|
: Contains a custom locale which displays long integers with a dot (`.`) as
|
||
|
thousands separator.
|
||
|
|
||
|
plugin.hpp
|
||
|
|
||
|
: Contains full support for POSIX shared libraries to be used as plugins.
|
||
|
Defines an interface for a generic plugin class. I use this in my
|
||
|
[screensaver](https://git.bobpolis.com/bob/screensaver/) project.
|
||
|
|
||
|
sync_queue.hpp
|
||
|
|
||
|
: This is taken from Bjarne Stroustrup's book "The C++ Programming Language", 4th
|
||
|
Ed., and implements a simple thread-safe queue.
|