Blaze 3.9
InvAdd.h
Go to the documentation of this file.
1//=================================================================================================
33//=================================================================================================
34
35#ifndef _BLAZE_MATH_FUNCTORS_INVADD_H_
36#define _BLAZE_MATH_FUNCTORS_INVADD_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 InvAdd
61{
62 //**********************************************************************************************
69 template< typename T1, typename T2 >
70 BLAZE_ALWAYS_INLINE decltype(auto) operator()( T1&& a, T2&& b ) const
71 {
72 return inv( std::forward<T1>( a ) + std::forward<T2>( b ) );
73 }
74 //**********************************************************************************************
75};
76//*************************************************************************************************
77
78} // namespace blaze
79
80#endif
Header file for the invert shim.
decltype(auto) inv(const DenseMatrix< MT, SO > &dm)
Calculation of the inverse of the given dense matrix.
Definition: DMatInvExpr.h:405
#define BLAZE_ALWAYS_INLINE
Platform dependent setup of an enforced inline keyword.
Definition: Inline.h:85
Generic wrapper for the inverted addition operator.
Definition: InvAdd.h:61
System settings for the inline keywords.