Belle II Software development
_nt_compare< T1, T_rest > Struct Template Reference

Static Public Member Functions

template<typename VECA_T , typename VECB_T >
static auto __isLessthen (const VECA_T &vecA, const VECB_T &vecB)
 
template<typename VECA_T , typename VECB_T >
static auto __isEequal (const VECA_T &vecA, const VECB_T &vecB)
 

Detailed Description

template<typename T1, typename... T_rest>
struct nt::comparators::_nt_compare< T1, T_rest >

Definition at line 299 of file ntuples_full.h.

Member Function Documentation

◆ __isEequal()

static auto __isEequal ( const VECA_T &  vecA,
const VECB_T &  vecB 
)
inlinestatic

Definition at line 316 of file ntuples_full.h.

317 {
318 if constexpr(sizeof...(T_rest) > 0) {
319 if (nt::_Remove_cvref_t<T1>::get(vecA) != nt::_Remove_cvref_t<T1>::get(vecB)) {
320 return false;
321 }
322 return _nt_compare<T_rest...>::__isEequal(vecA, vecB);
323 } else {
324 return nt::_Remove_cvref_t<T1>::get(vecA) == nt::_Remove_cvref_t<T1>::get(vecB);
325 }
326 }

◆ __isLessthen()

static auto __isLessthen ( const VECA_T &  vecA,
const VECB_T &  vecB 
)
inlinestatic

Definition at line 301 of file ntuples_full.h.

302 {
303 if constexpr(sizeof...(T_rest) > 0) {
304 if (T1::get(vecA) < T1::get(vecB)) {
305 return true;
306 } else if (T1::get(vecA) > T1::get(vecB)) {
307 return false;
308 }
309 return _nt_compare<T_rest...>::__isLessthen(vecA, vecB);
310 } else {
311 return T1::get(vecA) < T1::get(vecB);
312 }
313 }

The documentation for this struct was generated from the following file: