diff --git a/src/cli/cli.cpp b/src/cli/cli.cpp index a2aec3305..c376ed1a6 100644 --- a/src/cli/cli.cpp +++ b/src/cli/cli.cpp @@ -3211,7 +3211,7 @@ otError Interpreter::ProcessPing(uint8_t aArgsLength, Arg aArgs[]) { uint32_t timeout; SuccessOrExit(error = ParsePingInterval(aArgs[5], timeout)); - VerifyOrExit(timeout <= NumericLimits::Max(), error = OT_ERROR_INVALID_ARGS); + VerifyOrExit(timeout <= NumericLimits::kMax, error = OT_ERROR_INVALID_ARGS); config.mTimeout = static_cast(timeout); } diff --git a/src/core/common/numeric_limits.hpp b/src/core/common/numeric_limits.hpp index 9ff96807e..de3fa137f 100644 --- a/src/core/common/numeric_limits.hpp +++ b/src/core/common/numeric_limits.hpp @@ -28,7 +28,7 @@ /** * @file - * This file includes definitions for NumericLimits class. + * This file includes definitions for numeric limits. */ #ifndef NUMERIC_LIMITS_HPP_ @@ -44,64 +44,58 @@ namespace ot { * There are no members if `Type` is not a supported arithmetic type. * */ -template class NumericLimits +template struct NumericLimits { }; -template <> class NumericLimits +// Specialization for different integral types. + +template <> struct NumericLimits { -public: - static constexpr int8_t Min(void) { return INT8_MIN; } - static constexpr int8_t Max(void) { return INT8_MAX; } + static constexpr int8_t kMin = INT8_MIN; + static constexpr int8_t kMax = INT8_MAX; }; -template <> class NumericLimits +template <> struct NumericLimits { -public: - static constexpr int16_t Min(void) { return INT16_MIN; } - static constexpr int16_t Max(void) { return INT16_MAX; } + static constexpr int16_t kMin = INT16_MIN; + static constexpr int16_t kMax = INT16_MAX; }; -template <> class NumericLimits +template <> struct NumericLimits { -public: - static constexpr int32_t Min(void) { return INT32_MIN; } - static constexpr int32_t Max(void) { return INT32_MAX; } + static constexpr int32_t kMin = INT32_MIN; + static constexpr int32_t kMax = INT32_MAX; }; -template <> class NumericLimits +template <> struct NumericLimits { -public: - static constexpr int64_t Min(void) { return INT64_MIN; } - static constexpr int64_t Max(void) { return INT64_MAX; } + static constexpr int64_t kMin = INT64_MIN; + static constexpr int64_t kMax = INT64_MAX; }; -template <> class NumericLimits +template <> struct NumericLimits { -public: - static constexpr uint8_t Min(void) { return 0; } - static constexpr uint8_t Max(void) { return UINT8_MAX; } + static constexpr uint8_t kMin = 0; + static constexpr uint8_t kMax = UINT8_MAX; }; -template <> class NumericLimits +template <> struct NumericLimits { -public: - static constexpr uint16_t Min(void) { return 0; } - static constexpr uint16_t Max(void) { return UINT16_MAX; } + static constexpr uint16_t kMin = 0; + static constexpr uint16_t kMax = UINT16_MAX; }; -template <> class NumericLimits +template <> struct NumericLimits { -public: - static constexpr uint32_t Min(void) { return 0; } - static constexpr uint32_t Max(void) { return UINT32_MAX; } + static constexpr uint32_t kMin = 0; + static constexpr uint32_t kMax = UINT32_MAX; }; -template <> class NumericLimits +template <> struct NumericLimits { -public: - static constexpr uint64_t Min(void) { return 0; } - static constexpr uint64_t Max(void) { return UINT64_MAX; } + static constexpr uint64_t kMin = 0; + static constexpr uint64_t kMax = UINT64_MAX; }; } // namespace ot diff --git a/src/core/common/trickle_timer.hpp b/src/core/common/trickle_timer.hpp index 0f65c55ab..9aac25554 100644 --- a/src/core/common/trickle_timer.hpp +++ b/src/core/common/trickle_timer.hpp @@ -75,7 +75,7 @@ public: * suppression behavior, invoking the handler callback independent of number of "consistent" events). * */ - kInfiniteRedundancyConstant = NumericLimits::Max(), + kInfiniteRedundancyConstant = NumericLimits::kMax, }; /** diff --git a/src/core/net/ip4_address.cpp b/src/core/net/ip4_address.cpp index 3d361006e..949ea3d3c 100644 --- a/src/core/net/ip4_address.cpp +++ b/src/core/net/ip4_address.cpp @@ -62,7 +62,7 @@ Error Address::FromString(const char *aString) } value = static_cast((value * 10) + static_cast(digitChar - '0')); - VerifyOrExit(value <= NumericLimits::Max()); + VerifyOrExit(value <= NumericLimits::kMax); hasFirstDigit = true; } diff --git a/src/core/net/ip6_address.cpp b/src/core/net/ip6_address.cpp index 456ed9594..616bb1f69 100644 --- a/src/core/net/ip6_address.cpp +++ b/src/core/net/ip6_address.cpp @@ -578,7 +578,7 @@ Error Address::FromString(const char *aString) aString++; value = (value << 4) + digit; - VerifyOrExit(value <= NumericLimits::Max()); + VerifyOrExit(value <= NumericLimits::kMax); } VerifyOrExit(aString != start); diff --git a/src/core/utils/parse_cmdline.cpp b/src/core/utils/parse_cmdline.cpp index 969e4f085..e2f5f5a91 100644 --- a/src/core/utils/parse_cmdline.cpp +++ b/src/core/utils/parse_cmdline.cpp @@ -122,7 +122,7 @@ template Error ParseUint(const char *aString, UintType &aUin SuccessOrExit(error = ParseAsUint64(aString, value)); - VerifyOrExit(value <= NumericLimits::Max(), error = kErrorInvalidArgs); + VerifyOrExit(value <= NumericLimits::kMax, error = kErrorInvalidArgs); aUint = static_cast(value); exit: @@ -190,7 +190,7 @@ template Error ParseInt(const char *aString, IntType &aInt) SuccessOrExit(error = ParseAsInt32(aString, value)); - VerifyOrExit((NumericLimits::Min() <= value) && (value <= NumericLimits::Max()), + VerifyOrExit((NumericLimits::kMin <= value) && (value <= NumericLimits::kMax), error = kErrorInvalidArgs); aInt = static_cast(value); @@ -225,8 +225,8 @@ Error ParseAsInt32(const char *aString, int32_t &aInt32) } SuccessOrExit(error = ParseAsUint64(aString, value)); - VerifyOrExit(value <= (isNegavtive ? static_cast(-static_cast(NumericLimits::Min())) - : static_cast(NumericLimits::Max())), + VerifyOrExit(value <= (isNegavtive ? static_cast(-static_cast(NumericLimits::kMin)) + : static_cast(NumericLimits::kMax)), error = kErrorInvalidArgs); aInt32 = static_cast(isNegavtive ? -static_cast(value) : static_cast(value)); diff --git a/src/core/utils/ping_sender.cpp b/src/core/utils/ping_sender.cpp index 441f15731..7482968e3 100644 --- a/src/core/utils/ping_sender.cpp +++ b/src/core/utils/ping_sender.cpp @@ -210,7 +210,7 @@ void PingSender::HandleIcmpReceive(const Message & aMessage, reply.mSenderAddress = aMessageInfo.GetPeerAddr(); reply.mRoundTripTime = - static_cast(OT_MIN(TimerMilli::GetNow() - TimeMilli(timestamp), NumericLimits::Max())); + static_cast(OT_MIN(TimerMilli::GetNow() - TimeMilli(timestamp), NumericLimits::kMax)); reply.mSize = aMessage.GetLength() - aMessage.GetOffset(); reply.mSequenceNumber = aIcmpHeader.GetSequence(); reply.mHopLimit = aMessageInfo.GetHopLimit(); diff --git a/src/core/utils/ping_sender.hpp b/src/core/utils/ping_sender.hpp index bc7cb5e55..c3b132389 100644 --- a/src/core/utils/ping_sender.hpp +++ b/src/core/utils/ping_sender.hpp @@ -79,8 +79,8 @@ public: mSentCount = 0; mReceivedCount = 0; mTotalRoundTripTime = 0; - mMinRoundTripTime = NumericLimits::Max(); - mMaxRoundTripTime = NumericLimits::Min(); + mMinRoundTripTime = NumericLimits::kMax; + mMaxRoundTripTime = NumericLimits::kMin; mIsMulticast = false; } };