#include <modbuscpp/details/types.hpp>
template<typename T, typename = std::enable_if_t<std::is_integral_v<T>>>
base_metadata_t class
Template parameters | |
---|---|
T | metadata type |
Contents
Base metadata
Public types
-
template<T Value>using constant = std::integral_constant<T, Value>
Public static functions
- static auto validate(T value) -> bool constexpr noexcept
Constructors, destructors, conversion operators
-
template<T Value>base_metadata_t(constant<Value>) explicit constexpr noexcept
- base_metadata_t(T value = 0, bool do_validation = false) explicit constexpr
Public functions
- auto ref() -> T& noexcept
- void set(T value) noexcept
- void operator()(T value) noexcept
- auto get() const -> T constexpr noexcept
- auto operator()() const -> T constexpr noexcept
-
auto operator==(const base_
metadata_ t& other) const -> bool noexcept -
auto operator<(const base_
metadata_ t& other) const -> bool noexcept -
auto operator<=(const base_
metadata_ t& other) const -> bool noexcept -
auto operator>(const base_
metadata_ t& other) const -> bool noexcept -
auto operator>=(const base_
metadata_ t& other) const -> bool noexcept -
auto operator!=(const base_
metadata_ t& other) const -> bool noexcept -
auto operator-(const base_
metadata_ t& other) const -> base_ metadata_ t noexcept -
auto operator+(const base_
metadata_ t& other) const -> base_ metadata_ t noexcept -
auto operator++() -> base_
metadata_ t& noexcept -
auto operator--() -> base_
metadata_ t& noexcept - auto validate() -> bool noexcept
Friends
-
template<typename ostream>auto operator<<(ostream& os, const base_
metadata_ t& obj) -> ostream&
Function documentation
template<typename T, typename _2>
static bool modbus:: internal:: base_metadata_t<T, _2>:: validate(T value) constexpr noexcept
Parameters | |
---|---|
value | value to test |
Returns | true if pass the test |
Validate value
template<typename T, typename _2>
template<T Value>
modbus:: internal:: base_metadata_t<T, _2>:: base_metadata_t(constant<Value>) explicit constexpr noexcept
base_metadata constructor
template<typename T, typename _2>
modbus:: internal:: base_metadata_t<T, _2>:: base_metadata_t(T value = 0,
bool do_validation = false) explicit constexpr
Parameters | |
---|---|
value | value to set |
do_validation |
base_metadata constructor
template<typename T, typename _2>
T& modbus:: internal:: base_metadata_t<T, _2>:: ref() noexcept
Get reference of value
template<typename T, typename _2>
void modbus:: internal:: base_metadata_t<T, _2>:: set(T value) noexcept
Parameters | |
---|---|
value | value to set |
Set value
template<typename T, typename _2>
void modbus:: internal:: base_metadata_t<T, _2>:: operator()(T value) noexcept
Parameters | |
---|---|
value | value to set |
Set value [operator()]
template<typename T, typename _2>
T modbus:: internal:: base_metadata_t<T, _2>:: get() const constexpr noexcept
Returns | value |
---|
Get value
template<typename T, typename _2>
T modbus:: internal:: base_metadata_t<T, _2>:: operator()() const constexpr noexcept
Returns | value |
---|
Get value [operator()]
template<typename T, typename _2>
bool modbus:: internal:: base_metadata_t<T, _2>:: operator==(const base_ metadata_ t& other) const noexcept
Parameters | |
---|---|
other | other metadata |
Returns | true if value is equal with other |
Equality check
template<typename T, typename _2>
bool modbus:: internal:: base_metadata_t<T, _2>:: operator<(const base_ metadata_ t& other) const noexcept
Returns | true if value is less than with other |
---|
Less than check
template<typename T, typename _2>
bool modbus:: internal:: base_metadata_t<T, _2>:: operator<=(const base_ metadata_ t& other) const noexcept
Parameters | |
---|---|
other | other metadata |
Returns | true if value is less than equal with other |
Less than equal check
template<typename T, typename _2>
bool modbus:: internal:: base_metadata_t<T, _2>:: operator>(const base_ metadata_ t& other) const noexcept
Returns | true if value is more than with other |
---|
More than check
template<typename T, typename _2>
bool modbus:: internal:: base_metadata_t<T, _2>:: operator>=(const base_ metadata_ t& other) const noexcept
Parameters | |
---|---|
other | other metadata |
Returns | true if value is more than equal with other |
More than equal check
template<typename T, typename _2>
bool modbus:: internal:: base_metadata_t<T, _2>:: operator!=(const base_ metadata_ t& other) const noexcept
Parameters | |
---|---|
other | other metadata |
Returns | true if value is not equal with other |
Inequality check
template<typename T, typename _2>
base_ metadata_ t modbus:: internal:: base_metadata_t<T, _2>:: operator-(const base_ metadata_ t& other) const noexcept
Parameters | |
---|---|
other | other metadata |
Returns | new metadata |
Minus operator
template<typename T, typename _2>
base_ metadata_ t modbus:: internal:: base_metadata_t<T, _2>:: operator+(const base_ metadata_ t& other) const noexcept
Parameters | |
---|---|
other | other metadata |
Returns | new metadata |
Plus operator
template<typename T, typename _2>
base_ metadata_ t& modbus:: internal:: base_metadata_t<T, _2>:: operator++() noexcept
Returns | instance of metadata |
---|
Increment operator
template<typename T, typename _2>
base_ metadata_ t& modbus:: internal:: base_metadata_t<T, _2>:: operator--() noexcept
Returns | instance of metadata |
---|
Decrement operator
template<typename T, typename _2>
bool modbus:: internal:: base_metadata_t<T, _2>:: validate() noexcept
Returns | true if valid |
---|
Validate value
template<typename T, typename _2>
template<typename ostream>
ostream& operator<<(ostream& os,
const base_ metadata_ t& obj)
Parameters | |
---|---|
os | ostream |
obj | metadata instance |
Returns | stream |
Ostream operator