sanisizer
Sanitize sizes to avoid integer overflow
Loading...
Searching...
No Matches
product.hpp File Reference

Safe product 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::product_maybe (First_ first, Args_... more)
 
template<typename Dest_ , typename First_ , typename ... Args_>
constexpr Dest_ sanisizer::product (First_ first, Args_... more)
 
template<typename Dest_ , typename First_ , typename ... Args_>
constexpr Dest_ sanisizer::product_unsafe (First_ first, Args_... more)
 

Detailed Description

Safe product of integer sizes.