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::operation::get_is_flat< T, DefaultValue > Struct Template Reference

This operation attempts to call a member function which provides whether or not the component pushed to storage at a depth of zero. More...

#include "timemory/operations/types.hpp"

+ Collaboration diagram for tim::operation::get_is_flat< T, DefaultValue >:

Public Member Functions

template<typename Up >
auto operator() (const Up &obj) const
 

Detailed Description

template<typename T, bool DefaultValue>
struct tim::operation::get_is_flat< T, DefaultValue >

This operation attempts to call a member function which provides whether or not the component pushed to storage at a depth of zero.

Template Parameters
TComponent type
DefaultValueThe value to return if the member function is not provided

Definition at line 637 of file types.hpp.

Member Function Documentation

◆ operator()()

template<typename T , bool DefaultValue>
template<typename Up >
auto tim::operation::get_is_flat< T, DefaultValue >::operator() ( const Up &  obj) const
inline

Definition at line 642 of file types.hpp.

643 {
644 static_assert(!std::is_pointer<Up>::value,
645 "SFINAE tests will always fail with pointer types");
646 return sfinae(obj, 0);
647 }

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