src
extern
eigen3
unsupported
Eigen
CXX11
src
Tensor
TensorMacros.h
Go to the documentation of this file.
1
// This file is part of Eigen, a lightweight C++ template library
2
// for linear algebra.
3
//
4
// Copyright (C) 2015 Benoit Steiner <benoit.steiner.goog@gmail.com>
5
//
6
// This Source Code Form is subject to the terms of the Mozilla
7
// Public License v. 2.0. If a copy of the MPL was not distributed
8
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
9
10
#ifndef EIGEN_CXX11_TENSOR_TENSOR_META_MACROS_H
11
#define EIGEN_CXX11_TENSOR_TENSOR_META_MACROS_H
12
13
29
// SFINAE requires variadic templates
30
#ifndef __CUDACC__
31
#if EIGEN_HAS_VARIADIC_TEMPLATES
32
// SFINAE doesn't work for gcc <= 4.7
33
#ifdef EIGEN_COMP_GNUC
34
#if EIGEN_GNUC_AT_LEAST(4,8)
35
#define EIGEN_HAS_SFINAE
36
#endif
37
#else
38
#define EIGEN_HAS_SFINAE
39
#endif
40
#endif
41
#endif
42
43
#define EIGEN_SFINAE_ENABLE_IF( __condition__ ) \
44
typename internal::enable_if< ( __condition__ ) , int >::type = 0
45
46
47
#if EIGEN_HAS_CONSTEXPR
48
#define EIGEN_CONSTEXPR constexpr
49
#else
50
#define EIGEN_CONSTEXPR
51
#endif
52
53
54
#endif
control_box_rst
Author(s): Christoph Rösmann
autogenerated on Wed Mar 2 2022 00:06:48