An open API service indexing awesome lists of open source software.

https://github.com/sebanisu/toolslibrary

Various free functions that are used in other projects.
https://github.com/sebanisu/toolslibrary

Last synced: 8 months ago
JSON representation

Various free functions that are used in other projects.

Awesome Lists containing this project

README

          

# Tools Library

[![Build status](https://ci.appveyor.com/api/projects/status/1k9eepyk67kocj1p?svg=true)](https://ci.appveyor.com/project/Sebanisu/toolslibrary)
[![contributions welcome](https://img.shields.io/badge/contributions-welcome-brightgreen.svg?style=flat)](https://github.com/sebanisu/ToolsLibrary/issues)
[![Boost License](https://img.shields.io/badge/License-Boost-blue.svg)](https://www.boost.org/LICENSE_1_0.txt)
[![C++ 20](https://img.shields.io/badge/C++%20-20-ff69b4.svg)](https://en.cppreference.com/w/cpp/20)
[![GitHub followers](https://img.shields.io/github/followers/sebanisu.svg?style=social&label=Follow)](https://github.com/sebanisu?tab=followers)
[![GitHub stars](https://img.shields.io/github/stars/sebanisu/ToolsLibrary.svg?style=social&label=Star)](https://GitHub.com/sebanisu/ToolsLibrary/stargazers/)
[![Documentation](https://codedocs.xyz/Sebanisu/ToolsLibrary.svg)](https://codedocs.xyz/Sebanisu/ToolsLibrary)

I'm mirroring what codereport is doing. I will be using this code in my other projects. I'm putting it into an open source library so that anyone can use it.

My tests are wrote using [ut](https://github.com/boost-ext/ut). This is a neat library. It doesn't require the use of macros.

1. `tl/input.hpp`
* This struct wraps around a `std::span`, or a `std::istream`. This lets you output to a trivial types, or contiguous ranges of trivial types.
2. `tl/read.hpp`
* This file contains free functions that use `input` to read from files.
3. `tl/concepts.hpp`
* This file contains some concepts used by the rest of the library.
4. `tl/utility.hpp`
* This file has some free functions that the library depends on.
* Detecting the remaining bytes in a stream.
* Generating a sequence that has an operator() that passes the sequence one at a time as a template parameter.
5. `tl/random.hpp`
* This file has an iota function that gives you **X** random values in a range.