https://github.com/roaldnefs/lapwing
Lapwing is a shared library implementing a variety of C++ classes and templates extending the standard library.
https://github.com/roaldnefs/lapwing
cpp cpp20 library
Last synced: about 1 month ago
JSON representation
Lapwing is a shared library implementing a variety of C++ classes and templates extending the standard library.
- Host: GitHub
- URL: https://github.com/roaldnefs/lapwing
- Owner: roaldnefs
- Created: 2020-05-13T17:13:27.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2020-05-26T14:59:37.000Z (almost 5 years ago)
- Last Synced: 2025-02-15T01:28:30.504Z (3 months ago)
- Topics: cpp, cpp20, library
- Language: CMake
- Size: 11.7 KB
- Stars: 0
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Lapwing
Lapwing is a shared library implementing a variety of C++ classes and templates extending the standard library. The library includes:
- File descriptor buffers.
## Example
The following defines a simple porgram using the file descriptor buffer to write a string to standard output:
```c++
#include#include
#includeint main(int argc, char** argv) {
lapwing::OFdBuf fds(STDOUT_FILENO, 500);
std::ostream os(&fds);os << "Hello, World!\n";
}
```## Quickstart
Lapwing requires at least cmake 3.14 and the ability to compile C++20 code. The following shows how to compile and run the example:
```bash
$ cmake -Hexample -Bbuild/example
$ cmake --build build/example
$ ./build/example/example
```## Installation and usage
Lapwing can be easily added to your project through [CPM.make](https://github.com/TheLartians/CPM.cmake).
```cmake
CPMAddPackage(
NAME lapwing
VERSION 0.0.1
GIT_REPOSITORY https://github.com/roaldnefs/lapwing.git
)target_link_libraries(myProject lapwing)
```