OpenVPN 3 Core Library
|
#include <type_traits>
Go to the source code of this file.
Classes | |
struct | openvpn::IntrinsicType< BaseT, T > |
CRTP type designed to allow creation of strong types based on intrinsics. More... | |
Namespaces | |
namespace | openvpn |
Functions | |
template<typename BaseT , typename T > requires std::is_arithmetic_v<T> | |
constexpr bool | openvpn::operator== (IntrinsicType< BaseT, T > lhs, IntrinsicType< BaseT, T > rhs) noexcept |
Equality comparison operator. | |
template<typename BaseT , typename T > requires std::is_arithmetic_v<T> | |
constexpr auto | openvpn::operator<=> (IntrinsicType< BaseT, T > lhs, IntrinsicType< BaseT, T > rhs) noexcept |
Equality comparison operator. | |
template<typename BaseT , typename T > requires std::is_arithmetic_v<T> | |
constexpr BaseT | openvpn::operator+ (IntrinsicType< BaseT, T > lhs, IntrinsicType< BaseT, T > rhs) noexcept |
Addition operator. | |
template<typename BaseT , typename T > requires std::is_arithmetic_v<T> | |
constexpr BaseT | openvpn::operator- (IntrinsicType< BaseT, T > lhs, IntrinsicType< BaseT, T > rhs) noexcept |
Subtraction operator. | |
template<typename BaseT , typename T > requires std::is_arithmetic_v<T> | |
constexpr BaseT | openvpn::operator* (IntrinsicType< BaseT, T > lhs, IntrinsicType< BaseT, T > rhs) noexcept |
Multiplication operator. | |
template<typename BaseT , typename T > requires std::is_arithmetic_v<T> | |
constexpr BaseT | openvpn::operator/ (IntrinsicType< BaseT, T > lhs, IntrinsicType< BaseT, T > rhs) noexcept |
Division operator. | |
template<typename BaseT , typename T > requires std::is_integral_v<T> | |
constexpr BaseT | openvpn::operator~ (IntrinsicType< BaseT, T > t) noexcept |
Performs bitwise NOT operation on an IntrinsicType. | |
template<typename BaseT , typename T > requires std::is_integral_v<T> | |
constexpr BaseT | openvpn::operator| (IntrinsicType< BaseT, T > l, IntrinsicType< BaseT, T > r) noexcept |
Performs bitwise OR operation between two IntrinsicType objects. | |
template<typename BaseT , typename T > requires std::is_integral_v<T> | |
constexpr BaseT | openvpn::operator& (IntrinsicType< BaseT, T > l, IntrinsicType< BaseT, T > r) noexcept |
Performs bitwise AND operation between two IntrinsicType objects. | |