diff --git a/source/RobotAPI/libraries/aron/core/aron_conversions.h b/source/RobotAPI/libraries/aron/core/aron_conversions.h index 9d067df7ed847624e6a6d07f9ececfe3669ee88d..30f2e949b575e22bf631abc06ca1c4ba8172efaf 100644 --- a/source/RobotAPI/libraries/aron/core/aron_conversions.h +++ b/source/RobotAPI/libraries/aron/core/aron_conversions.h @@ -124,6 +124,7 @@ namespace detail // std::optional template <class DtoT, class BoT> + requires (!aron::detail::DtoAndBoAreSame<DtoT, BoT>) void toAron(std::optional<DtoT>& dto, const std::optional<BoT>& bo) { if (bo.has_value()) @@ -138,6 +139,7 @@ namespace detail } template <class DtoT, class BoT> + requires (!aron::detail::DtoAndBoAreSame<DtoT, BoT>) void fromAron(const std::optional<DtoT>& dto, std::optional<BoT>& bo) { if (dto.has_value()) @@ -230,6 +232,7 @@ namespace detail // std::vector template <class DtoT, class BoT> + requires (!aron::detail::DtoAndBoAreSame<DtoT, BoT>) void toAron(std::vector<DtoT>& dtos, const std::vector<BoT>& bos) { dtos.clear(); @@ -240,6 +243,7 @@ namespace detail } } template <class DtoT, class BoT> + requires (!aron::detail::DtoAndBoAreSame<DtoT, BoT>) void fromAron(const std::vector<DtoT>& dtos, std::vector<BoT>& bos) { bos.clear(); @@ -339,11 +343,13 @@ namespace armarx // std::optional template <class DtoT, class BoT> + requires (!aron::detail::DtoAndBoAreSame<DtoT, BoT>) void toAron(std::optional<DtoT>& dto, const std::optional<BoT>& bo) { armarx::aron::toAron(dto, bo); } template <class DtoT, class BoT> + requires (!aron::detail::DtoAndBoAreSame<DtoT, BoT>) void fromAron(const std::optional<DtoT>& dto, std::optional<BoT>& bo) { armarx::aron::fromAron(dto, bo);