|
sanisizer
Sanitize sizes to avoid integer overflow
|
Safe sum of integer sizes. More...
#include <type_traits>#include <stdexcept>#include <optional>#include "generics.hpp"#include "Bounded.hpp"#include "Constant.hpp"#include "utils.hpp"#include "comparisons.hpp"Go to the source code of this file.
Namespaces | |
| namespace | sanisizer |
| Sanitize sizes to avoid integer overflow. | |
Functions | |
| template<typename Dest_ , typename First_ , typename ... Args_> | |
| constexpr std::optional< Dest_ > | sanisizer::sum_maybe (First_ first, Args_... more) |
| template<typename Dest_ , typename First_ , typename ... Args_> | |
| constexpr Dest_ | sanisizer::sum (First_ first, Args_... more) |
| template<typename Dest_ , typename Value_ > | |
| Dest_ | sanisizer::plus_one (Value_ x) |
| template<typename Integer_ > | |
| Integer_ & | sanisizer::increment (Integer_ &x) |
| template<typename Dest_ , typename First_ , typename ... Args_> | |
| constexpr Dest_ | sanisizer::sum_unsafe (First_ first, Args_... more) |
Safe sum of integer sizes.