Belle II Software release-09-00-01
ntuple< T > Struct Template Reference
Inheritance diagram for ntuple< T >:
Collaboration diagram for ntuple< T >:

Public Member Functions

constexpr ntuple (const ntuple &rhs)=default
 
constexpr ntupleoperator= (const ntuple &rhs)=default
 
constexpr ntupleoperator= (ntuple &&rhs)=default
 
constexpr ntuple (const T &...t1)
 
template<typename... Ts, typename = std::enable_if_t < (sizeof...(Ts) != 1) >>
constexpr ntuple (Ts &&...t1)
 
template<typename T2 >
decltype(auto) operator[] (const ax_name_container< T2 > &t)
 
template<typename... ARGS>
auto operator| (const ntuple< ARGS... > &rhs) const
 

Static Public Attributes

static constexpr std::size_t __size__ = sizeof...(T)
 

Friends

std::ostream & operator<< (std::ostream &out, const ntuple &self)
 
constexpr bool operator< (const ntuple &lhs, const ntuple &rhs)
 

Detailed Description

template<typename... T>
struct nt::ntuple< T >

Definition at line 501 of file ntuples_full.h.

Constructor & Destructor Documentation

◆ ntuple() [1/3]

constexpr ntuple ( const T &...  t1)
inlineconstexpr

Definition at line 505 of file ntuples_full.h.

505: ntuple_base_t<T>(t1)... {}

◆ ntuple() [2/3]

constexpr ntuple ( )
inlineconstexpr

Definition at line 508 of file ntuples_full.h.

508: ntuple_base_t<T>(_Remove_cvref_t<T> {})... {}

◆ ntuple() [3/3]

constexpr ntuple ( Ts &&...  t1)
inlineconstexpr

Definition at line 511 of file ntuples_full.h.

511: ntuple_base_t<T>(std::forward<Ts>(t1))... {}

Member Function Documentation

◆ operator[]()

decltype(auto) operator[] ( const ax_name_container< T2 > &  t)
inline

Definition at line 514 of file ntuples_full.h.

515 {
516 return ax_name_container<T2>::get(*this);
517 }

◆ operator|()

auto operator| ( const ntuple< ARGS... > &  rhs) const
inline

Definition at line 534 of file ntuples_full.h.

535 {
536 return ntuple<T..., ARGS...>(
537 T::get(*this)...,
538 ARGS::get(rhs)...);
539 }

Friends And Related Function Documentation

◆ operator<

constexpr bool operator< ( const ntuple< T > &  lhs,
const ntuple< T > &  rhs 
)
friend

Definition at line 542 of file ntuples_full.h.

543 {
544 constexpr auto lt = comparators::lessThan<T...>();
545 return lt(lhs, rhs);
546 }

◆ operator<<

std::ostream & operator<< ( std::ostream &  out,
const ntuple< T > &  self 
)
friend

Definition at line 519 of file ntuples_full.h.

520 {
521 out << "|";
522
523 constexpr_for<0, sizeof...(T), 1>([&](auto i) {
524 using current_t = decltype(NthTypeOf<i, _Remove_cvref_t<T>...> {});
525 out << " ";
526 out << current_t::get(self);
527 out << " |";
528 });
529
530 return out;
531 }

Member Data Documentation

◆ __size__

constexpr std::size_t __size__ = sizeof...(T)
inlinestaticconstexpr

Definition at line 547 of file ntuples_full.h.


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