8 #ifndef HERD_ARRAYFORWARDER_H_     9 #define HERD_ARRAYFORWARDER_H_    13 #include <type_traits>    18 #ifndef _GLIBCXX17_CONSTEXPR    19 #if __cplusplus >= 201703L    20 #define _GLIBCXX17_CONSTEXPR constexpr    22 #define _GLIBCXX17_CONSTEXPR    51 template <
typename _Tp, std::
size_t _Nm>
    56 template <
typename _Tp, std::
size_t _Nm>
    58   return !(__one == __two);
    61 template <
typename _Tp, std::
size_t _Nm>
    63   return std::lexicographical_compare(__a._content.begin(), __a._content.end(), __b._content.begin(),
    67 template <
typename _Tp, std::
size_t _Nm>
    72 template <
typename _Tp, std::
size_t _Nm>
    74   return !(__one > __two);
    77 template <
typename _Tp, std::
size_t _Nm>
    79   return !(__one < __two);
   105 #if __cplusplus >= 201703L   106   void swap(
ArrayForwarder &__other) noexcept(std::__is_nothrow_swappable<_Tp>::value) {
   150   constexpr const_reference 
operator[](size_type __n) 
const noexcept { 
return _content.operator[](__n); }
   154   constexpr const_reference 
at(size_type __n)
 const { 
return _content.at(__n); }
   158   constexpr const_reference 
front() const noexcept { 
return _content.front(); }
   162   constexpr const_reference 
back() const noexcept { 
return _content.back(); }
   181 template <
typename _Tp, std::
size_t _Nm>
   183 #if __cplusplus > 201402L // c++1z   185     typename std::enable_if<std::__is_swappable<_Tp>::value>::type
   193 #if __cplusplus > 201402L // c++1z   194 template <
typename _Tp, std::
size_t _Nm>
   199 template <std::
size_t _Int, 
typename _Tp, std::
size_t _Nm>
   201   return std::get<_Int, _Tp, _Nm>(__arr._content);
   204 template <std::
size_t _Int, 
typename _Tp, std::
size_t _Nm>
   206   return std::get<_Int, _Tp, _Nm>(std::move(__arr._content));
   209 template <std::
size_t _Int, 
typename _Tp, std::
size_t _Nm>
   211   return std::get<_Int, _Tp, _Nm>(__arr._content);
   214 template <std::
size_t _Int, 
typename _Tp, std::
size_t _Nm>
   216   return std::get<_Int, _Tp, _Nm>(std::move(__arr._content));
 bool operator>(const ArrayForwarder< _Tp, _Nm > &__one, const ArrayForwarder< _Tp, _Nm > &__two)
Definition: ArrayForwarder.h:68
bool operator==(const HoughTrackStub &lhs, const HoughTrackStub &rhs)
Definition: HoughTrackStub.h:41
ArrayForwarder(std::array< _Tp, _Nm > arr)
Definition: ArrayForwarder.h:98
CssGeoParams.h CssGeoParams class declaration. 
Definition: CaloPDCalibrationAlgo.h:24
_GLIBCXX17_CONSTEXPR reference back() noexcept
Definition: ArrayForwarder.h:160
_GLIBCXX17_CONSTEXPR const_iterator cbegin() const noexcept
Definition: ArrayForwarder.h:132
bool operator!=(const ArrayForwarder< _Tp, _Nm > &__one, const ArrayForwarder< _Tp, _Nm > &__two)
Definition: ArrayForwarder.h:57
_GLIBCXX17_CONSTEXPR const_reverse_iterator rend() const noexcept
Definition: ArrayForwarder.h:130
_GLIBCXX17_CONSTEXPR const_reverse_iterator crbegin() const noexcept
Definition: ArrayForwarder.h:136
#define _GLIBCXX17_CONSTEXPR
Definition: ArrayForwarder.h:22
std::array< _Tp, _Nm > _content
Definition: ArrayForwarder.h:169
_GLIBCXX17_CONSTEXPR const_reverse_iterator rbegin() const noexcept
Definition: ArrayForwarder.h:126
A forwarder class for std::array. 
Definition: ArrayForwarder.h:48
_Tp value_type
Definition: ArrayForwarder.h:84
void swap(ArrayForwarder &__other) noexcept(noexcept(std::swap(std::declval< _Tp &>(), std::declval< _Tp &>())))
Definition: ArrayForwarder.h:110
void swap(ArrayForwarder< _Tp, _Nm > &__one, ArrayForwarder< _Tp, _Nm > &__two) noexcept(noexcept(__one.swap(__two)))
Definition: ArrayForwarder.h:189
constexpr const_reference back() const noexcept
Definition: ArrayForwarder.h:162
_GLIBCXX17_CONSTEXPR const_iterator end() const noexcept
Definition: ArrayForwarder.h:122
value_type * iterator
Definition: ArrayForwarder.h:89
std::reverse_iterator< iterator > reverse_iterator
Definition: ArrayForwarder.h:93
constexpr size_type max_size() const noexcept
Definition: ArrayForwarder.h:143
_GLIBCXX17_CONSTEXPR reference operator[](size_type __n) noexcept
Definition: ArrayForwarder.h:148
constexpr const_reference at(size_type __n) const
Definition: ArrayForwarder.h:154
_GLIBCXX17_CONSTEXPR iterator begin() noexcept
Definition: ArrayForwarder.h:116
std::ptrdiff_t difference_type
Definition: ArrayForwarder.h:92
ArrayForwarder()
Definition: ArrayForwarder.h:96
const value_type * const_pointer
Definition: ArrayForwarder.h:86
std::size_t size_type
Definition: ArrayForwarder.h:91
std::reverse_iterator< const_iterator > const_reverse_iterator
Definition: ArrayForwarder.h:94
const value_type & const_reference
Definition: ArrayForwarder.h:88
bool operator>=(const ArrayForwarder< _Tp, _Nm > &__one, const ArrayForwarder< _Tp, _Nm > &__two)
Definition: ArrayForwarder.h:78
_GLIBCXX17_CONSTEXPR const_iterator cend() const noexcept
Definition: ArrayForwarder.h:134
constexpr size_type size() const noexcept
Definition: ArrayForwarder.h:141
constexpr bool empty() const noexcept
Definition: ArrayForwarder.h:145
_GLIBCXX17_CONSTEXPR reverse_iterator rbegin() noexcept
Definition: ArrayForwarder.h:124
const value_type * const_iterator
Definition: ArrayForwarder.h:90
_GLIBCXX17_CONSTEXPR const_pointer data() const noexcept
Definition: ArrayForwarder.h:166
value_type * pointer
Definition: ArrayForwarder.h:85
value_type & reference
Definition: ArrayForwarder.h:87
_GLIBCXX17_CONSTEXPR reference at(size_type __n)
Definition: ArrayForwarder.h:152
_GLIBCXX17_CONSTEXPR const_reverse_iterator crend() const noexcept
Definition: ArrayForwarder.h:138
_GLIBCXX17_CONSTEXPR reverse_iterator rend() noexcept
Definition: ArrayForwarder.h:128
_GLIBCXX17_CONSTEXPR const_iterator begin() const noexcept
Definition: ArrayForwarder.h:118
void fill(const value_type &__u)
Definition: ArrayForwarder.h:103
constexpr const_reference operator[](size_type __n) const noexcept
Definition: ArrayForwarder.h:150
_GLIBCXX17_CONSTEXPR iterator end() noexcept
Definition: ArrayForwarder.h:120
constexpr const_reference front() const noexcept
Definition: ArrayForwarder.h:158
_GLIBCXX17_CONSTEXPR pointer data() noexcept
Definition: ArrayForwarder.h:164
_GLIBCXX17_CONSTEXPR reference front() noexcept
Definition: ArrayForwarder.h:156