1#ifndef MPQC_MATH_TENSOR_FORWARD_HPP
2#define MPQC_MATH_TENSOR_FORWARD_HPP
4#include "mpqc/math/tensor/order.hpp"
6#include <boost/fusion/include/boost_tuple.hpp>
7#include <boost/mpl/accumulate.hpp>
8#include <boost/mpl/print.hpp>
10#include <boost/type_traits/remove_const.hpp>
11#include <boost/type_traits/remove_reference.hpp>
15 template <
typename T,
size_t N,
class Order = TensorColumnMajor >
27 typedef typename boost::is_integral<
28 typename boost::remove_reference<T>::type
35 static const bool value =
36 boost::mpl::accumulate<
38 boost::mpl::bool_<true>,
39 boost::mpl::and_< is_integral<boost::mpl::_2>, boost::mpl::_1 >
58 typename boost::enable_if<
69 typename boost::disable_if<
70 is_integral_tuple<Tie>,
74 return range_tie<Tie>(t);
Tensor base class.
Definition forward.hpp:16
Contains new MPQC code since version 3.
Definition integralenginepool.hpp:37
Tensor reference class.
Definition tensor.hpp:13
index tie wrapper
Definition forward.hpp:45
"returns" true if every element of tuple T is an integral type
Definition forward.hpp:34
Definition forward.hpp:26
range tie wrapper
Definition forward.hpp:51