From f62818f65b1f273f74623d3d4f0687cc14d26a82 Mon Sep 17 00:00:00 2001 From: Sergei Shirokov Date: Tue, 18 Jun 2024 15:35:27 +0300 Subject: [PATCH] fix build issue #verification #docs #sonar --- .../transport/can/can_transport_impl.hpp | 27 +++++++++---------- include/libcyphal/transport/common/tools.hpp | 4 +-- .../transport/udp/udp_transport_impl.hpp | 12 ++++----- 3 files changed, 21 insertions(+), 22 deletions(-) diff --git a/include/libcyphal/transport/can/can_transport_impl.hpp b/include/libcyphal/transport/can/can_transport_impl.hpp index b64cc133a..539ed5c7a 100644 --- a/include/libcyphal/transport/can/can_transport_impl.hpp +++ b/include/libcyphal/transport/can/can_transport_impl.hpp @@ -343,7 +343,7 @@ class TransportImpl final : private TransportDelegate, public ICanTransport // payload.size(), payload.data()); - opt_any_error = tryHandleTransientCanardResult(result, media); + opt_any_error = tryHandleTransientCanardResult(media, result); if (opt_any_error.has_value()) { // The handler (if any) just said that it's NOT fine to continue with pushing to other media TX queues, @@ -392,9 +392,9 @@ class TransportImpl final : private TransportDelegate, public ICanTransport // // MARK: Privates: template - CETL_NODISCARD cetl::optional tryHandleTransientMediaError(MediaError&& media_error, const Media& media) + CETL_NODISCARD cetl::optional tryHandleTransientMediaError(const Media& media, MediaError&& error) { - AnyError any_error = common::detail::anyErrorFromVariant(std::move(media_error)); + AnyError any_error = common::detail::anyErrorFromVariant(std::move(error)); if (!transient_error_handler_) { return any_error; @@ -405,8 +405,8 @@ class TransportImpl final : private TransportDelegate, public ICanTransport // } template - CETL_NODISCARD cetl::optional tryHandleTransientCanardResult(const std::int32_t result, - const Media& media) + CETL_NODISCARD cetl::optional tryHandleTransientCanardResult(const Media& media, + const std::int32_t result) { cetl::optional opt_any_error = optAnyErrorFromCanard(result); if (opt_any_error.has_value() && transient_error_handler_) @@ -491,9 +491,9 @@ class TransportImpl final : private TransportDelegate, public ICanTransport // std::array payload{}; Expected, MediaError> pop_result = media.interface().pop(payload); - if (auto* media_error = cetl::get_if(&pop_result)) + if (auto* error = cetl::get_if(&pop_result)) { - return tryHandleTransientMediaError(std::move(*media_error), media); + return tryHandleTransientMediaError(media, std::move(*error)); } const auto* const opt_rx_meta = cetl::get_if>(&pop_result); if ((opt_rx_meta == nullptr) || !opt_rx_meta->has_value()) @@ -517,7 +517,7 @@ class TransportImpl final : private TransportDelegate, public ICanTransport // &out_transfer, &out_subscription); cetl::optional opt_any_error = - tryHandleTransientCanardResult(result, media); + tryHandleTransientCanardResult(media, result); if (!opt_any_error.has_value() && (result > 0)) { CETL_DEBUG_ASSERT(out_subscription != nullptr, "Expected subscription."); @@ -585,14 +585,14 @@ class TransportImpl final : private TransportDelegate, public ICanTransport // // Note that media not being ready/able to push a frame just yet (aka temporary) // is not reported as an error (see `is_pushed` below). // - if (auto* media_error = cetl::get_if(&maybe_pushed)) + if (auto* error = cetl::get_if(&maybe_pushed)) { // Release problematic frame from the TX queue, so that other frames in TX queue have their chance. // Otherwise, we would be stuck in a run loop trying to push the same frame. popAndFreeCanardTxQueueItem(); cetl::optional opt_any_error = - tryHandleTransientMediaError(std::move(*media_error), media); + tryHandleTransientMediaError(media, std::move(*error)); if (!opt_any_error.has_value()) { // The handler (if any) just said that it's fine to continue with pushing other frames @@ -653,14 +653,13 @@ class TransportImpl final : private TransportDelegate, public ICanTransport // bool was_error = false; for (const Media& media : media_array_) { - cetl::optional media_error = media.interface().setFilters({filters.data(), filters.size()}); - if (media_error.has_value()) + cetl::optional error = media.interface().setFilters({filters.data(), filters.size()}); + if (error.has_value()) { was_error = true; cetl::optional opt_any_error = - tryHandleTransientMediaError(std::move(media_error.value()), - media); + tryHandleTransientMediaError(media, std::move(error.value())); if (opt_any_error.has_value()) { // The handler (if any) just said that it's NOT fine to continue with configuring other media, diff --git a/include/libcyphal/transport/common/tools.hpp b/include/libcyphal/transport/common/tools.hpp index 717fade6b..a4c48f750 100644 --- a/include/libcyphal/transport/common/tools.hpp +++ b/include/libcyphal/transport/common/tools.hpp @@ -23,10 +23,10 @@ namespace detail /// @brief Converts a compatible (aka subset) error variant to transport's `AnyError` one. /// template -CETL_NODISCARD static AnyError anyErrorFromVariant(ErrorVariant&& other_error_var) +CETL_NODISCARD static AnyError anyErrorFromVariant(ErrorVariant&& error_var) { return cetl::visit([](auto&& error) -> AnyError { return std::forward(error); }, - std::forward(other_error_var)); + std::forward(error_var)); } } // namespace detail diff --git a/include/libcyphal/transport/udp/udp_transport_impl.hpp b/include/libcyphal/transport/udp/udp_transport_impl.hpp index 3ba8e528c..8eadd43c5 100644 --- a/include/libcyphal/transport/udp/udp_transport_impl.hpp +++ b/include/libcyphal/transport/udp/udp_transport_impl.hpp @@ -390,7 +390,7 @@ class TransportImpl final : private TransportDelegate, public IUdpTransport // payload_, nullptr); - return self_.tryHandleTransientUdpardResult(result, media_); + return self_.tryHandleTransientUdpardResult(media_, result); } cetl::optional operator()(const AnyUdpardTxMetadata::Request& tx_metadata) const @@ -404,7 +404,7 @@ class TransportImpl final : private TransportDelegate, public IUdpTransport // payload_, nullptr); - return self_.tryHandleTransientUdpardResult(result, media_); + return self_.tryHandleTransientUdpardResult(media_, result); } cetl::optional operator()(const AnyUdpardTxMetadata::Respond& tx_metadata) const @@ -418,7 +418,7 @@ class TransportImpl final : private TransportDelegate, public IUdpTransport // payload_, nullptr); - return self_.tryHandleTransientUdpardResult(result, media_); + return self_.tryHandleTransientUdpardResult(media_, result); } private: @@ -429,7 +429,7 @@ class TransportImpl final : private TransportDelegate, public IUdpTransport // }; // TxTransferHandler template - CETL_NODISCARD cetl::optional tryHandleTransientMediaError(Media& media, ErrorVariant&& error_var) + CETL_NODISCARD cetl::optional tryHandleTransientMediaError(const Media& media, ErrorVariant&& error_var) { AnyError any_error = common::detail::anyErrorFromVariant(std::forward(error_var)); if (!transient_error_handler_) @@ -442,8 +442,8 @@ class TransportImpl final : private TransportDelegate, public IUdpTransport // } template - CETL_NODISCARD cetl::optional tryHandleTransientUdpardResult(const std::int32_t result, - Media& media) const + CETL_NODISCARD cetl::optional tryHandleTransientUdpardResult(Media& media, + const std::int32_t result) const { cetl::optional opt_any_error = optAnyErrorFromUdpard(result); if (opt_any_error.has_value() && transient_error_handler_)