#ifndef EIGEN_NULLARY_FUNCTORS_H
#define EIGEN_NULLARY_FUNCTORS_H
#include "../InternalHeaderCheck.h"
namespace Eigen {
namespace internal {
template <typename Scalar>
struct scalar_constant_op { … };
functor_traits<scalar_constant_op<Scalar>>;
template <typename Scalar>
struct scalar_identity_op { … };
functor_traits<scalar_identity_op<Scalar>>;
template <typename Scalar, bool IsInteger>
struct linspaced_op_impl;
linspaced_op_impl<Scalar, false>;
linspaced_op_impl<Scalar, true>;
template <typename Scalar>
struct linspaced_op;
functor_traits<linspaced_op<Scalar>>;
template <typename Scalar>
struct linspaced_op { … };
template <typename Scalar>
struct equalspaced_op { … };
functor_traits<equalspaced_op<Scalar>>;
template <typename Functor>
struct functor_has_linear_access { … };
#if !(EIGEN_COMP_MSVC || EIGEN_COMP_GNUC || (EIGEN_COMP_ICC >= 1600))
template <typename Scalar, typename IndexType>
struct has_nullary_operator<scalar_constant_op<Scalar>, IndexType> {
enum { value = 1 };
};
template <typename Scalar, typename IndexType>
struct has_unary_operator<scalar_constant_op<Scalar>, IndexType> {
enum { value = 0 };
};
template <typename Scalar, typename IndexType>
struct has_binary_operator<scalar_constant_op<Scalar>, IndexType> {
enum { value = 0 };
};
template <typename Scalar, typename IndexType>
struct has_nullary_operator<scalar_identity_op<Scalar>, IndexType> {
enum { value = 0 };
};
template <typename Scalar, typename IndexType>
struct has_unary_operator<scalar_identity_op<Scalar>, IndexType> {
enum { value = 0 };
};
template <typename Scalar, typename IndexType>
struct has_binary_operator<scalar_identity_op<Scalar>, IndexType> {
enum { value = 1 };
};
template <typename Scalar, typename IndexType>
struct has_nullary_operator<linspaced_op<Scalar>, IndexType> {
enum { value = 0 };
};
template <typename Scalar, typename IndexType>
struct has_unary_operator<linspaced_op<Scalar>, IndexType> {
enum { value = 1 };
};
template <typename Scalar, typename IndexType>
struct has_binary_operator<linspaced_op<Scalar>, IndexType> {
enum { value = 0 };
};
template <typename Scalar, typename IndexType>
struct has_nullary_operator<scalar_random_op<Scalar>, IndexType> {
enum { value = 1 };
};
template <typename Scalar, typename IndexType>
struct has_unary_operator<scalar_random_op<Scalar>, IndexType> {
enum { value = 0 };
};
template <typename Scalar, typename IndexType>
struct has_binary_operator<scalar_random_op<Scalar>, IndexType> {
enum { value = 0 };
};
#endif
}
}
#endif