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::trait::is_available< T > Struct Template Reference

trait that signifies that an implementation for the component is available. When this is set to false, the variadic component bundlers like component_tuple will silently filter out this type from the template parameters, e.g. More...

#include "timemory/mpl/types.hpp"

+ Collaboration diagram for tim::trait::is_available< T >:

Detailed Description

template<typename T>
struct tim::trait::is_available< T >

trait that signifies that an implementation for the component is available. When this is set to false, the variadic component bundlers like component_tuple will silently filter out this type from the template parameters, e.g.

namespace tim {
namespace trait {
template <>
struct is_available<component::bar> : false_type {};
}
}
#define TIMEMORY_DECLARE_COMPONENT(NAME)
Declare a non-templated component type in the tim::component namespace.
Definition: macros.hpp:54
Definition: kokkosp.cpp:39

will cause these two template instantiations to become identical:

using A_t = component_tuple<foo>;
using B_t = component_tuple<foo, bar>;

and a definition of 'bar' will not be required for compilation.

Definition at line 354 of file types.hpp.


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