select.h 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. #pragma once
  2. // @generated by torchgen/gen.py from Function.h
  3. #include <ATen/Context.h>
  4. #include <ATen/DeviceGuard.h>
  5. #include <ATen/TensorUtils.h>
  6. #include <ATen/TracerMode.h>
  7. #include <ATen/core/Generator.h>
  8. #include <ATen/core/Reduction.h>
  9. #include <ATen/core/Tensor.h>
  10. #include <c10/core/Scalar.h>
  11. #include <c10/core/Storage.h>
  12. #include <c10/core/TensorOptions.h>
  13. #include <c10/util/Deprecated.h>
  14. #include <c10/util/Optional.h>
  15. #include <ATen/ops/select_ops.h>
  16. namespace at {
  17. // aten::select.Dimname(Tensor(a) self, Dimname dim, int index) -> Tensor(a)
  18. inline at::Tensor select(const at::Tensor & self, at::Dimname dim, int64_t index) {
  19. return at::_ops::select_Dimname::call(self, dim, index);
  20. }
  21. // aten::select.int(Tensor(a) self, int dim, SymInt index) -> Tensor(a)
  22. inline at::Tensor select(const at::Tensor & self, int64_t dim, int64_t index) {
  23. return at::_ops::select_int::call(self, dim, index);
  24. }
  25. namespace symint {
  26. template <typename T, typename = std::enable_if_t<std::is_same<T, int64_t>::value>>
  27. at::Tensor select(const at::Tensor & self, int64_t dim, int64_t index) {
  28. return at::_ops::select_int::call(self, dim, index);
  29. }
  30. }
  31. // aten::select.int(Tensor(a) self, int dim, SymInt index) -> Tensor(a)
  32. inline at::Tensor select_symint(const at::Tensor & self, int64_t dim, c10::SymInt index) {
  33. return at::_ops::select_int::call(self, dim, index);
  34. }
  35. namespace symint {
  36. template <typename T, typename = std::enable_if_t<std::is_same<T, c10::SymInt>::value>>
  37. at::Tensor select(const at::Tensor & self, int64_t dim, c10::SymInt index) {
  38. return at::_ops::select_int::call(self, dim, index);
  39. }
  40. }
  41. }