timemory 3.3.0
Modular C++ Toolkit for Performance Analysis and Logging. Profiling API and Tools for C, C++, CUDA, Fortran, and Python. The C++ template API is essentially a framework to creating tools: it is designed to provide a unifying interface for recording various performance measurements alongside data logging and interfaces to other tools.
tim::mpl::union_index_of< T, TupleT< Types... > > Struct Template Reference

#include "timemory/mpl/types.hpp"

+ Collaboration diagram for tim::mpl::union_index_of< T, TupleT< Types... > >:

Static Public Member Functions

template<typename U = T>
static constexpr auto value (int, enable_if_t< is_one_of< U, TupleT< Types... > >::value, int >=0)
 
template<typename U = T>
static constexpr auto value (long, enable_if_t< is_one_of< U *, TupleT< Types... > >::value, int >=0)
 

Detailed Description

template<typename T, template< typename... > class TupleT, typename... Types>
struct tim::mpl::union_index_of< T, TupleT< Types... > >

Definition at line 1014 of file types.hpp.

Member Function Documentation

◆ value() [1/2]

template<typename T , template< typename... > class TupleT, typename... Types>
template<typename U = T>
static constexpr auto tim::mpl::union_index_of< T, TupleT< Types... > >::value ( int  ,
enable_if_t< is_one_of< U, TupleT< Types... > >::value, int >  = 0 
)
inlinestaticconstexpr

Definition at line 1017 of file types.hpp.

1019 {
1020 return index_of<T, TupleT<Types...>>::value;
1021 }
impl::index_of< Tp, Type > index_of
Definition: types.hpp:575
static constexpr auto value(int, enable_if_t< is_one_of< U, TupleT< Types... > >::value, int >=0)
Definition: types.hpp:1017

◆ value() [2/2]

template<typename T , template< typename... > class TupleT, typename... Types>
template<typename U = T>
static constexpr auto tim::mpl::union_index_of< T, TupleT< Types... > >::value ( long  ,
enable_if_t< is_one_of< U *, TupleT< Types... > >::value, int >  = 0 
)
inlinestaticconstexpr

Definition at line 1024 of file types.hpp.

1026 {
1027 return index_of<T*, TupleT<Types...>>::value;
1028 }

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