| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
This project is a part of Staticlibs.
This project implements stream-like operations on the arbitrary Source and Sink template implementations.
This library is similar in nature with Boost.Iostreams library, but much less powerful and much less complex.
Library follows C++ Core Guidelines using span instead of "buffer pointer + length" pair.
This library is header-only and depends on staticlib_config and staticlib_support.
Link to the API documentation.
This library is built around the notions of the Source (input stream) and the Sink (output stream) template concepts.
Source concept:
class Source {
// move constructor and assignment operator
Source(Source&& other);
Source& operator=(Source&& other);
// read method
std::streamsize read(sl::io::span<char> span);
};
Sink concept:
class Sink {
// move constructor and assignment operator
Sink(Sink&& other);
Sink& operator=(Sink&& other);
// write method
std::streamsize write(sl::io::span<const char> span);
// flush method
std::streamsize flush();
};
Library implements a set of generic operations (read_all, copy) on arbitrary sources and sinks and a number of template wrappers like buffered and counting sources and sinks.
See usage examples in tests.
This project is released under the Apache License 2.0.
2018-10-17
2018-06-20
2018-06-19
2018-06-16
2018-06-12
2018-06-04
2018-03-20
2018-02-22
2017-12-22
2017-04-08
2017-02-04
2016-01-16
2015-12-13
2015-11-24
2015-11-14
2015-11-09
2015-11-06
2015-11-01
| Back | FazBrowse Home | New Git URL |