aron_conversions.h File Reference
#include <map>
#include <memory>
#include <optional>
#include <type_traits>
#include <vector>
#include <algorithm>
#include "Path.h"
+ Include dependency graph for aron_conversions.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  is_optional<... >
 
struct  is_optional< std::optional< Ts... > >
 

Namespaces

 armarx
 This file offers overloads of toIce() and fromIce() functions for STL container types.
 
 armarx::aron
 
 armarx::aron::detail
 

Functions

template<class BoT , class DtoT >
BoT fromAron (const DtoT &dto)
 
template<class BoT , class DtoT >
BoT fromAron (const DtoT &dto)
 
template<class DtoT , class BoT >
void fromAron (const DtoT &dto, bool dtoValid, BoT &bo, bool &boValid)
 
template<class DtoT , class BoT >
void fromAron (const DtoT &dto, bool dtoValid, BoT &bo, bool &boValid)
 
template<class DtoT , class BoT >
void fromAron (const DtoT &dto, bool dtoValid, std::optional< BoT > &bo)
 
template<class DtoT , class BoT >
void fromAron (const DtoT &dto, bool dtoValid, std::optional< BoT > &bo)
 
template<class DtoT , class BoT >
void fromAron (const DtoT &dto, std::unique_ptr< BoT > &bo)
 
template<class DtoT , class BoT >
void fromAron (const DtoT &dto, std::unique_ptr< BoT > &bo)
 
template<class DtoT , class BoT >
void fromAron (const std::optional< DtoT > &dto, std::optional< BoT > &bo)
 
template<class DtoT , class BoT >
void fromAron (const std::optional< DtoT > &dto, std::optional< BoT > &bo)
 
template<class DtoT , class BoT >
void fromAron (const std::vector< DtoT > &dtos, std::vector< BoT > &bos)
 
template<typename T >
auto fromAron (const std::vector< T > &v) -> std::vector< decltype(fromAron(T()))>
 Converter function for vector of aron elements to plain cpp type. More...
 
template<class T >
void fromAron (const T &dto, T &bo)
 
template<class T >
void fromAron (const T &dto, T &bo)
 
 fromAron (dto, *bo)
 
template<class DtoKeyT , class DtoValueT , class BoKeyT , class BoValueT >
 requires (!(aron::detail::DtoAndBoAreSame< DtoKeyT, BoKeyT > and aron::detail::DtoAndBoAreSame< DtoValueT, BoValueT >)) void toAron(std
 
template<class DtoKeyT , class DtoValueT , class BoKeyT , class BoValueT >
 requires (!(detail::DtoAndBoAreSame< DtoKeyT, BoKeyT > and detail::DtoAndBoAreSame< DtoValueT, BoValueT >)) void toAron(std
 
template<class DtoT , class BoT >
 requires (!aron::detail::DtoAndBoAreSame< DtoT, BoT >) void toAron(std
 
template<class DtoT , class BoT >
 requires (not detail::is_optional< BoT >::value) void toAron(std
 
template<class DtoT , class BoT >
 requires (not detail::is_optional< DtoT >::value) void fromAron(DtoT &dto
 
template<class DtoT , class BoT >
DtoT toAron (const BoT &bo)
 
template<class DtoT , class BoT >
DtoT toAron (const BoT &bo)
 
template<typename T >
auto toAron (const std::vector< T > &v)
 
template<class DtoT , class BoT >
void toAron (DtoT &dto, bool &dtoValid, const BoT &bo, bool boValid)
 
template<class DtoT , class BoT >
void toAron (DtoT &dto, bool &dtoValid, const BoT &bo, bool boValid)
 
template<class DtoT , class BoT >
void toAron (DtoT &dto, bool &dtoValid, const std::optional< BoT > &bo)
 
template<class DtoT , class BoT >
void toAron (DtoT &dto, bool &dtoValid, const std::optional< BoT > &bo)
 
template<class DtoT , class BoT >
void toAron (DtoT &dto, const std::unique_ptr< BoT > &bo)
 
template<class DtoT , class BoT >
void toAron (DtoT &dto, const std::unique_ptr< BoT > &bo)
 
template<class DtoT , class BoT >
void toAron (std::optional< DtoT > &dto, const std::optional< BoT > &bo)
 
template<class DtoT , class BoT >
void toAron (std::optional< DtoT > &dto, const std::optional< BoT > &bo)
 
template<class DtoT , class BoT >
void toAron (std::vector< DtoT > &dtos, const std::vector< BoT > &bos)
 
template<class T >
void toAron (T &dto, const T &bo)
 Framework for converting ARON DTOs (Data Transfer Objects) to C++ BOs (Business Objects) and back. More...
 
template<class T >
void toAron (T &dto, const T &bo)
 

Variables

const std::optional< BoT > & bo
 
template<typename DtoT , typename BoT >
concept DtoAndBoAreSame = std::is_same<DtoT, BoT>::value