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 401 of file ntuples_full.h.

Constructor & Destructor Documentation

◆ ntuple() [1/3]

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

Definition at line 405 of file ntuples_full.h.

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

◆ ntuple() [2/3]

constexpr ntuple ( )
inlineconstexpr

Definition at line 408 of file ntuples_full.h.

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

◆ ntuple() [3/3]

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

Definition at line 411 of file ntuples_full.h.

411: 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 414 of file ntuples_full.h.

415 {
416 return ax_name_container<T2>::get(*this);
417 }

◆ operator|()

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

Definition at line 434 of file ntuples_full.h.

435 {
436 return ntuple<T..., ARGS...>(
437 T::get(*this)...,
438 ARGS::get(rhs)...);
439 }

Friends And Related Function Documentation

◆ operator<

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

Definition at line 442 of file ntuples_full.h.

443 {
444 constexpr auto lt = comparators::lessThan<T...>();
445 return lt(lhs, rhs);
446 }

◆ operator<<

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

Definition at line 419 of file ntuples_full.h.

420 {
421 out << "|";
422
423 constexpr_for<0, sizeof...(T), 1>([&](auto i) {
424 using current_t = decltype(NthTypeOf<i, _Remove_cvref_t<T>...> {});
425 out << " ";
426 out << current_t::get(self);
427 out << " |";
428 });
429
430 return out;
431 }

Member Data Documentation

◆ __size__

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

Definition at line 447 of file ntuples_full.h.


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