Blaze 3.9
DeclSym.h
Go to the documentation of this file.
1//=================================================================================================
33//=================================================================================================
34
35#ifndef _BLAZE_MATH_FUNCTORS_DECLSYM_H_
36#define _BLAZE_MATH_FUNCTORS_DECLSYM_H_
37
38
39//*************************************************************************************************
40// Includes
41//*************************************************************************************************
42
43#include <utility>
45#include <blaze/system/Inline.h>
46
47
48namespace blaze {
49
50//=================================================================================================
51//
52// CLASS DEFINITION
53//
54//=================================================================================================
55
56//*************************************************************************************************
60struct DeclSym
61{
62 //**********************************************************************************************
68 template< typename T >
69 BLAZE_ALWAYS_INLINE BLAZE_DEVICE_CALLABLE decltype(auto) operator()( T&& a ) const
70 {
71 return declsym( std::forward<T>( a ) );
72 }
73 //**********************************************************************************************
74};
75//*************************************************************************************************
76
77} // namespace blaze
78
79#endif
Macro for CUDA compatibility.
decltype(auto) declsym(const DenseMatrix< MT, SO > &dm)
Declares the given dense matrix expression dm as symmetric.
Definition: DMatDeclSymExpr.h:1005
#define BLAZE_ALWAYS_INLINE
Platform dependent setup of an enforced inline keyword.
Definition: Inline.h:85
#define BLAZE_DEVICE_CALLABLE
Conditional macro that sets host and device attributes when compiled with CUDA.
Definition: HostDevice.h:94
Generic wrapper for the declsym() function.
Definition: DeclSym.h:61
System settings for the inline keywords.