TiledArray::detail::transform< T > Struct Template Reference
Documentation
template<typename T>
struct TiledArray::detail::transform< T >
customization point transform functionality to tensor class T, useful for nonintrusive extension of T to be usable as element type T in Tensor<T>
provides transform functionality to class T
, useful for nonintrusive extension of a tensor type T
to be usable as element type T
in Tensor<T>
- Template Parameters
-
T a tensor type
- Note
- The default implementation constructs T, then computes it by coiterating over elements of the argument tensors and transforming with the transform
Op
. This should be specialized for classes like TiledArray::Tensor that already include the appropriate transform constructors already
Public Member Functions | |
template<typename Op , typename Tensor , typename... Tensors> | |
T | operator() (Op &&op, Tensor &&tensor, Tensors &&... tensors) const |
template<typename Op , typename Tensor , typename... Tensors> | |
void | operator() (T &result, Op &&op, Tensor &&tensor, Tensors &&... tensors) const |
template<typename Op , typename Tensor , typename... Tensors> | |
T | operator() (Op &&op, const Permutation &perm, Tensor &&tensor, Tensors &&... tensors) const |
template<typename Op , typename Tensor , typename... Tensors> | |
void | operator() (T &result, Op &&op, const Permutation &perm, Tensor &&tensor, Tensors &&... tensors) const |
Member Function Documentation
◆ operator()() [1/4]
template<typename T >
template<typename Op , typename Tensor , typename... Tensors>
|
inline |
◆ operator()() [2/4]
template<typename T >
template<typename Op , typename Tensor , typename... Tensors>
|
inline |
◆ operator()() [3/4]
template<typename T >
template<typename Op , typename Tensor , typename... Tensors>
|
inline |
◆ operator()() [4/4]
template<typename T >
template<typename Op , typename Tensor , typename... Tensors>
|
inline |
The documentation for this struct was generated from the following file:
- TiledArray/tensor/kernels.h