Belle II Software development
ntuple< T > Struct Template Reference
Inheritance 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 489 of file ntuples_full.h.

Constructor & Destructor Documentation

◆ ntuple() [1/3]

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

Definition at line 493 of file ntuples_full.h.

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

◆ ntuple() [2/3]

constexpr ntuple ( )
inlineconstexpr

Definition at line 496 of file ntuples_full.h.

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

◆ ntuple() [3/3]

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

Definition at line 499 of file ntuples_full.h.

499: 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 502 of file ntuples_full.h.

503 {
504 return ax_name_container<T2>::get(*this);
505 }

◆ operator|()

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

Definition at line 522 of file ntuples_full.h.

523 {
524 return ntuple<T..., ARGS...>(
525 T::get(*this)...,
526 ARGS::get(rhs)...);
527 }

Friends And Related Function Documentation

◆ operator<

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

Definition at line 530 of file ntuples_full.h.

531 {
532 constexpr auto lt = comparators::lessThan<T...>();
533 return lt(lhs, rhs);
534 }

◆ operator<<

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

Definition at line 507 of file ntuples_full.h.

508 {
509 out << "|";
510
511 constexpr_for<0, sizeof...(T), 1>([&](auto i) {
512 using current_t = decltype(NthTypeOf<i, _Remove_cvref_t<T>...> {});
513 out << " ";
514 out << current_t::get(self);
515 out << " |";
516 });
517
518 return out;
519 }

Member Data Documentation

◆ __size__

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

Definition at line 535 of file ntuples_full.h.


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