|
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. | |