tetl 0.1.0
Embedded Template Library
|
#include <accessor_conjugate.hpp>
Public Types | |
using | data_handle_type = typename Accessor::data_handle_type |
using | element_type = add_const_t< conditional_t< is_arithmetic_v< remove_cv_t< typename Accessor::element_type > >, typename Accessor::element_type, typename reference::value_type > > |
using | offset_policy = conditional_t< is_arithmetic_v< remove_cv_t< typename Accessor::element_type > >, typename Accessor::offset_policy, accessor_conjugate< typename Accessor::offset_policy > > |
using | reference = conditional_t< is_arithmetic_v< remove_cv_t< typename Accessor::element_type > >, typename Accessor::reference, detail::conjugated_scalar< typename Accessor::reference, remove_cv_t< typename Accessor::element_type > > > |
Public Member Functions | |
constexpr | accessor_conjugate (Accessor a) |
constexpr auto | access (data_handle_type p, size_t i) const noexcept(noexcept(reference(_nestedAccessor.access(p, i)))) -> reference |
constexpr auto | nested_accessor () const -> Accessor |
constexpr auto | offset (data_handle_type p, size_t i) const noexcept(noexcept(_nestedAccessor.offset(p, i))) -> typename offset_policy::data_handle_type |
using data_handle_type = typename Accessor::data_handle_type |
using element_type = add_const_t<conditional_t< is_arithmetic_v<remove_cv_t<typename Accessor::element_type> >, typename Accessor::element_type, typename reference::value_type > > |
using offset_policy = conditional_t< is_arithmetic_v<remove_cv_t<typename Accessor::element_type> >, typename Accessor::offset_policy, accessor_conjugate<typename Accessor::offset_policy> > |
using reference = conditional_t< is_arithmetic_v<remove_cv_t<typename Accessor::element_type> >, typename Accessor::reference, detail::conjugated_scalar<typename Accessor::reference, remove_cv_t<typename Accessor::element_type> > > |
|
inlineconstexpr |
|
inlineconstexprnoexcept |
|
inlineconstexprnoexcept |