CMS 3D CMS Logo

List of all members | Public Types | Static Public Member Functions | Static Public Attributes
edm::eventsetup::produce::find_index< T, FindT > Struct Template Reference

#include <produce_helpers.h>

Public Types

using container_type = typename product_traits< T >::type
 

Static Public Member Functions

template<typename HeadT , typename TailT >
static constexpr int findIndexOf ()
 

Static Public Attributes

static constexpr int value
 

Detailed Description

template<typename T, typename FindT>
struct edm::eventsetup::produce::find_index< T, FindT >

Definition at line 117 of file produce_helpers.h.

Member Typedef Documentation

template<typename T , typename FindT >
using edm::eventsetup::produce::find_index< T, FindT >::container_type = typename product_traits<T>::type

Definition at line 118 of file produce_helpers.h.

Member Function Documentation

template<typename T , typename FindT >
template<typename HeadT , typename TailT >
static constexpr int edm::eventsetup::produce::find_index< T, FindT >::findIndexOf ( )
inlinestatic

Definition at line 120 of file produce_helpers.h.

References constexpr.

120  {
121  if constexpr (not std::is_same_v<TailT, FindT>) {
123  return findIndexOf<typename container_type::head_type, typename container_type::tail_type>() + 1;
124  } else {
125  return 0;
126  }
127  }
typename product_traits< T >::type container_type
#define constexpr

Member Data Documentation

template<typename T , typename FindT >
constexpr int edm::eventsetup::produce::find_index< T, FindT >::value
static