| 60 | // Primary device specific functor to be specialized for each device and type. |
| 61 | template <typename Device, typename T, bool conjugate = false> |
| 62 | struct Transpose { |
| 63 | static void run(const Device& d, const Tensor& in, |
| 64 | const gtl::ArraySlice<int32> perm, Tensor* out); |
| 65 | }; |
| 66 | |
| 67 | // Implementation details. |
| 68 | namespace internal { |