Blaze  3.6
Eval.h
Go to the documentation of this file.
1 //=================================================================================================
33 //=================================================================================================
34 
35 #ifndef _BLAZE_MATH_SHIMS_EVAL_H_
36 #define _BLAZE_MATH_SHIMS_EVAL_H_
37 
38 
39 //*************************************************************************************************
40 // Includes
41 //*************************************************************************************************
42 
43 #include <blaze/system/Inline.h>
44 #include <blaze/util/EnableIf.h>
47 
48 
49 namespace blaze {
50 
51 //=================================================================================================
52 //
53 // EVAL SHIM
54 //
55 //=================================================================================================
56 
57 //*************************************************************************************************
68 template< typename T >
69 BLAZE_ALWAYS_INLINE constexpr EnableIf_t< IsBuiltin_v<T> || IsComplex_v<T>, const T& >
70  eval( const T& a ) noexcept
71 {
72  return a;
73 }
74 //*************************************************************************************************
75 
76 } // namespace blaze
77 
78 #endif
Namespace of the Blaze C++ math library.
Definition: Blaze.h:58
#define BLAZE_ALWAYS_INLINE
Platform dependent setup of an enforced inline keyword.
Definition: Inline.h:85
decltype(auto) eval(const DenseMatrix< MT, SO > &dm)
Forces the evaluation of the given dense matrix expression dm.
Definition: DMatEvalExpr.h:786
Header file for the EnableIf class template.
Header file for the IsBuiltin type trait.
Header file for the IsComplex type trait.
System settings for the inline keywords.