libscheaders/README.md

43 lines
1.0 KiB
Markdown
Raw Permalink Normal View History

2024-11-28 17:14:13 +01:00
# 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.