randint.h 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377
  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/randint_ops.h>
  16. namespace at {
  17. // aten::randint(int high, SymInt[] size, *, ScalarType? dtype=long, Layout? layout=None, Device? device=None, bool? pin_memory=None) -> Tensor
  18. inline at::Tensor randint(int64_t high, at::IntArrayRef size, at::TensorOptions options=at::kLong) {
  19. return at::_ops::randint::call(high, c10::fromIntArrayRefSlow(size), optTypeMetaToScalarType(options.dtype_opt()), options.layout_opt(), options.device_opt(), options.pinned_memory_opt());
  20. }
  21. namespace symint {
  22. template <typename T, typename = std::enable_if_t<std::is_same<T, int64_t>::value>>
  23. at::Tensor randint(int64_t high, at::IntArrayRef size, at::TensorOptions options=at::kLong) {
  24. return at::_ops::randint::call(high, c10::fromIntArrayRefSlow(size), optTypeMetaToScalarType(options.dtype_opt()), options.layout_opt(), options.device_opt(), options.pinned_memory_opt());
  25. }
  26. }
  27. // aten::randint(int high, SymInt[] size, *, ScalarType? dtype=long, Layout? layout=None, Device? device=None, bool? pin_memory=None) -> Tensor
  28. inline at::Tensor randint(int64_t high, at::IntArrayRef size, c10::optional<at::ScalarType> dtype, c10::optional<at::Layout> layout, c10::optional<at::Device> device, c10::optional<bool> pin_memory) {
  29. return at::_ops::randint::call(high, c10::fromIntArrayRefSlow(size), dtype, layout, device, pin_memory);
  30. }
  31. namespace symint {
  32. template <typename T, typename = std::enable_if_t<std::is_same<T, int64_t>::value>>
  33. at::Tensor randint(int64_t high, at::IntArrayRef size, c10::optional<at::ScalarType> dtype, c10::optional<at::Layout> layout, c10::optional<at::Device> device, c10::optional<bool> pin_memory) {
  34. return at::_ops::randint::call(high, c10::fromIntArrayRefSlow(size), dtype, layout, device, pin_memory);
  35. }
  36. }
  37. // aten::randint(int high, SymInt[] size, *, ScalarType? dtype=long, Layout? layout=None, Device? device=None, bool? pin_memory=None) -> Tensor
  38. inline at::Tensor randint_symint(int64_t high, c10::SymIntArrayRef size, at::TensorOptions options=at::kLong) {
  39. return at::_ops::randint::call(high, size, optTypeMetaToScalarType(options.dtype_opt()), options.layout_opt(), options.device_opt(), options.pinned_memory_opt());
  40. }
  41. namespace symint {
  42. template <typename T, typename = std::enable_if_t<std::is_same<T, c10::SymInt>::value>>
  43. at::Tensor randint(int64_t high, c10::SymIntArrayRef size, at::TensorOptions options=at::kLong) {
  44. return at::_ops::randint::call(high, size, optTypeMetaToScalarType(options.dtype_opt()), options.layout_opt(), options.device_opt(), options.pinned_memory_opt());
  45. }
  46. }
  47. // aten::randint(int high, SymInt[] size, *, ScalarType? dtype=long, Layout? layout=None, Device? device=None, bool? pin_memory=None) -> Tensor
  48. inline at::Tensor randint_symint(int64_t high, c10::SymIntArrayRef size, c10::optional<at::ScalarType> dtype, c10::optional<at::Layout> layout, c10::optional<at::Device> device, c10::optional<bool> pin_memory) {
  49. return at::_ops::randint::call(high, size, dtype, layout, device, pin_memory);
  50. }
  51. namespace symint {
  52. template <typename T, typename = std::enable_if_t<std::is_same<T, c10::SymInt>::value>>
  53. at::Tensor randint(int64_t high, c10::SymIntArrayRef size, c10::optional<at::ScalarType> dtype, c10::optional<at::Layout> layout, c10::optional<at::Device> device, c10::optional<bool> pin_memory) {
  54. return at::_ops::randint::call(high, size, dtype, layout, device, pin_memory);
  55. }
  56. }
  57. // aten::randint.generator(int high, SymInt[] size, *, Generator? generator, ScalarType? dtype=long, Layout? layout=None, Device? device=None, bool? pin_memory=None) -> Tensor
  58. inline at::Tensor randint(int64_t high, at::IntArrayRef size, c10::optional<at::Generator> generator, at::TensorOptions options=at::kLong) {
  59. return at::_ops::randint_generator::call(high, c10::fromIntArrayRefSlow(size), generator, optTypeMetaToScalarType(options.dtype_opt()), options.layout_opt(), options.device_opt(), options.pinned_memory_opt());
  60. }
  61. namespace symint {
  62. template <typename T, typename = std::enable_if_t<std::is_same<T, int64_t>::value>>
  63. at::Tensor randint(int64_t high, at::IntArrayRef size, c10::optional<at::Generator> generator, at::TensorOptions options=at::kLong) {
  64. return at::_ops::randint_generator::call(high, c10::fromIntArrayRefSlow(size), generator, optTypeMetaToScalarType(options.dtype_opt()), options.layout_opt(), options.device_opt(), options.pinned_memory_opt());
  65. }
  66. }
  67. // aten::randint.generator(int high, SymInt[] size, *, Generator? generator, ScalarType? dtype=long, Layout? layout=None, Device? device=None, bool? pin_memory=None) -> Tensor
  68. inline at::Tensor randint(int64_t high, at::IntArrayRef size, c10::optional<at::Generator> generator, c10::optional<at::ScalarType> dtype, c10::optional<at::Layout> layout, c10::optional<at::Device> device, c10::optional<bool> pin_memory) {
  69. return at::_ops::randint_generator::call(high, c10::fromIntArrayRefSlow(size), generator, dtype, layout, device, pin_memory);
  70. }
  71. namespace symint {
  72. template <typename T, typename = std::enable_if_t<std::is_same<T, int64_t>::value>>
  73. at::Tensor randint(int64_t high, at::IntArrayRef size, c10::optional<at::Generator> generator, c10::optional<at::ScalarType> dtype, c10::optional<at::Layout> layout, c10::optional<at::Device> device, c10::optional<bool> pin_memory) {
  74. return at::_ops::randint_generator::call(high, c10::fromIntArrayRefSlow(size), generator, dtype, layout, device, pin_memory);
  75. }
  76. }
  77. // aten::randint.generator(int high, SymInt[] size, *, Generator? generator, ScalarType? dtype=long, Layout? layout=None, Device? device=None, bool? pin_memory=None) -> Tensor
  78. inline at::Tensor randint_symint(int64_t high, c10::SymIntArrayRef size, c10::optional<at::Generator> generator, at::TensorOptions options=at::kLong) {
  79. return at::_ops::randint_generator::call(high, size, generator, optTypeMetaToScalarType(options.dtype_opt()), options.layout_opt(), options.device_opt(), options.pinned_memory_opt());
  80. }
  81. namespace symint {
  82. template <typename T, typename = std::enable_if_t<std::is_same<T, c10::SymInt>::value>>
  83. at::Tensor randint(int64_t high, c10::SymIntArrayRef size, c10::optional<at::Generator> generator, at::TensorOptions options=at::kLong) {
  84. return at::_ops::randint_generator::call(high, size, generator, optTypeMetaToScalarType(options.dtype_opt()), options.layout_opt(), options.device_opt(), options.pinned_memory_opt());
  85. }
  86. }
  87. // aten::randint.generator(int high, SymInt[] size, *, Generator? generator, ScalarType? dtype=long, Layout? layout=None, Device? device=None, bool? pin_memory=None) -> Tensor
  88. inline at::Tensor randint_symint(int64_t high, c10::SymIntArrayRef size, c10::optional<at::Generator> generator, c10::optional<at::ScalarType> dtype, c10::optional<at::Layout> layout, c10::optional<at::Device> device, c10::optional<bool> pin_memory) {
  89. return at::_ops::randint_generator::call(high, size, generator, dtype, layout, device, pin_memory);
  90. }
  91. namespace symint {
  92. template <typename T, typename = std::enable_if_t<std::is_same<T, c10::SymInt>::value>>
  93. at::Tensor randint(int64_t high, c10::SymIntArrayRef size, c10::optional<at::Generator> generator, c10::optional<at::ScalarType> dtype, c10::optional<at::Layout> layout, c10::optional<at::Device> device, c10::optional<bool> pin_memory) {
  94. return at::_ops::randint_generator::call(high, size, generator, dtype, layout, device, pin_memory);
  95. }
  96. }
  97. // aten::randint.low(int low, int high, SymInt[] size, *, ScalarType? dtype=long, Layout? layout=None, Device? device=None, bool? pin_memory=None) -> Tensor
  98. inline at::Tensor randint(int64_t low, int64_t high, at::IntArrayRef size, at::TensorOptions options=at::kLong) {
  99. return at::_ops::randint_low::call(low, high, c10::fromIntArrayRefSlow(size), optTypeMetaToScalarType(options.dtype_opt()), options.layout_opt(), options.device_opt(), options.pinned_memory_opt());
  100. }
  101. namespace symint {
  102. template <typename T, typename = std::enable_if_t<std::is_same<T, int64_t>::value>>
  103. at::Tensor randint(int64_t low, int64_t high, at::IntArrayRef size, at::TensorOptions options=at::kLong) {
  104. return at::_ops::randint_low::call(low, high, c10::fromIntArrayRefSlow(size), optTypeMetaToScalarType(options.dtype_opt()), options.layout_opt(), options.device_opt(), options.pinned_memory_opt());
  105. }
  106. }
  107. // aten::randint.low(int low, int high, SymInt[] size, *, ScalarType? dtype=long, Layout? layout=None, Device? device=None, bool? pin_memory=None) -> Tensor
  108. inline at::Tensor randint(int64_t low, int64_t high, at::IntArrayRef size, c10::optional<at::ScalarType> dtype, c10::optional<at::Layout> layout, c10::optional<at::Device> device, c10::optional<bool> pin_memory) {
  109. return at::_ops::randint_low::call(low, high, c10::fromIntArrayRefSlow(size), dtype, layout, device, pin_memory);
  110. }
  111. namespace symint {
  112. template <typename T, typename = std::enable_if_t<std::is_same<T, int64_t>::value>>
  113. at::Tensor randint(int64_t low, int64_t high, at::IntArrayRef size, c10::optional<at::ScalarType> dtype, c10::optional<at::Layout> layout, c10::optional<at::Device> device, c10::optional<bool> pin_memory) {
  114. return at::_ops::randint_low::call(low, high, c10::fromIntArrayRefSlow(size), dtype, layout, device, pin_memory);
  115. }
  116. }
  117. // aten::randint.low(int low, int high, SymInt[] size, *, ScalarType? dtype=long, Layout? layout=None, Device? device=None, bool? pin_memory=None) -> Tensor
  118. inline at::Tensor randint_symint(int64_t low, int64_t high, c10::SymIntArrayRef size, at::TensorOptions options=at::kLong) {
  119. return at::_ops::randint_low::call(low, high, size, optTypeMetaToScalarType(options.dtype_opt()), options.layout_opt(), options.device_opt(), options.pinned_memory_opt());
  120. }
  121. namespace symint {
  122. template <typename T, typename = std::enable_if_t<std::is_same<T, c10::SymInt>::value>>
  123. at::Tensor randint(int64_t low, int64_t high, c10::SymIntArrayRef size, at::TensorOptions options=at::kLong) {
  124. return at::_ops::randint_low::call(low, high, size, optTypeMetaToScalarType(options.dtype_opt()), options.layout_opt(), options.device_opt(), options.pinned_memory_opt());
  125. }
  126. }
  127. // aten::randint.low(int low, int high, SymInt[] size, *, ScalarType? dtype=long, Layout? layout=None, Device? device=None, bool? pin_memory=None) -> Tensor
  128. inline at::Tensor randint_symint(int64_t low, int64_t high, c10::SymIntArrayRef size, c10::optional<at::ScalarType> dtype, c10::optional<at::Layout> layout, c10::optional<at::Device> device, c10::optional<bool> pin_memory) {
  129. return at::_ops::randint_low::call(low, high, size, dtype, layout, device, pin_memory);
  130. }
  131. namespace symint {
  132. template <typename T, typename = std::enable_if_t<std::is_same<T, c10::SymInt>::value>>
  133. at::Tensor randint(int64_t low, int64_t high, c10::SymIntArrayRef size, c10::optional<at::ScalarType> dtype, c10::optional<at::Layout> layout, c10::optional<at::Device> device, c10::optional<bool> pin_memory) {
  134. return at::_ops::randint_low::call(low, high, size, dtype, layout, device, pin_memory);
  135. }
  136. }
  137. // aten::randint.low_generator(int low, int high, SymInt[] size, *, Generator? generator, ScalarType? dtype=long, Layout? layout=None, Device? device=None, bool? pin_memory=None) -> Tensor
  138. inline at::Tensor randint(int64_t low, int64_t high, at::IntArrayRef size, c10::optional<at::Generator> generator, at::TensorOptions options=at::kLong) {
  139. return at::_ops::randint_low_generator::call(low, high, c10::fromIntArrayRefSlow(size), generator, optTypeMetaToScalarType(options.dtype_opt()), options.layout_opt(), options.device_opt(), options.pinned_memory_opt());
  140. }
  141. namespace symint {
  142. template <typename T, typename = std::enable_if_t<std::is_same<T, int64_t>::value>>
  143. at::Tensor randint(int64_t low, int64_t high, at::IntArrayRef size, c10::optional<at::Generator> generator, at::TensorOptions options=at::kLong) {
  144. return at::_ops::randint_low_generator::call(low, high, c10::fromIntArrayRefSlow(size), generator, optTypeMetaToScalarType(options.dtype_opt()), options.layout_opt(), options.device_opt(), options.pinned_memory_opt());
  145. }
  146. }
  147. // aten::randint.low_generator(int low, int high, SymInt[] size, *, Generator? generator, ScalarType? dtype=long, Layout? layout=None, Device? device=None, bool? pin_memory=None) -> Tensor
  148. inline at::Tensor randint(int64_t low, int64_t high, at::IntArrayRef size, c10::optional<at::Generator> generator, c10::optional<at::ScalarType> dtype, c10::optional<at::Layout> layout, c10::optional<at::Device> device, c10::optional<bool> pin_memory) {
  149. return at::_ops::randint_low_generator::call(low, high, c10::fromIntArrayRefSlow(size), generator, dtype, layout, device, pin_memory);
  150. }
  151. namespace symint {
  152. template <typename T, typename = std::enable_if_t<std::is_same<T, int64_t>::value>>
  153. at::Tensor randint(int64_t low, int64_t high, at::IntArrayRef size, c10::optional<at::Generator> generator, c10::optional<at::ScalarType> dtype, c10::optional<at::Layout> layout, c10::optional<at::Device> device, c10::optional<bool> pin_memory) {
  154. return at::_ops::randint_low_generator::call(low, high, c10::fromIntArrayRefSlow(size), generator, dtype, layout, device, pin_memory);
  155. }
  156. }
  157. // aten::randint.low_generator(int low, int high, SymInt[] size, *, Generator? generator, ScalarType? dtype=long, Layout? layout=None, Device? device=None, bool? pin_memory=None) -> Tensor
  158. inline at::Tensor randint_symint(int64_t low, int64_t high, c10::SymIntArrayRef size, c10::optional<at::Generator> generator, at::TensorOptions options=at::kLong) {
  159. return at::_ops::randint_low_generator::call(low, high, size, generator, optTypeMetaToScalarType(options.dtype_opt()), options.layout_opt(), options.device_opt(), options.pinned_memory_opt());
  160. }
  161. namespace symint {
  162. template <typename T, typename = std::enable_if_t<std::is_same<T, c10::SymInt>::value>>
  163. at::Tensor randint(int64_t low, int64_t high, c10::SymIntArrayRef size, c10::optional<at::Generator> generator, at::TensorOptions options=at::kLong) {
  164. return at::_ops::randint_low_generator::call(low, high, size, generator, optTypeMetaToScalarType(options.dtype_opt()), options.layout_opt(), options.device_opt(), options.pinned_memory_opt());
  165. }
  166. }
  167. // aten::randint.low_generator(int low, int high, SymInt[] size, *, Generator? generator, ScalarType? dtype=long, Layout? layout=None, Device? device=None, bool? pin_memory=None) -> Tensor
  168. inline at::Tensor randint_symint(int64_t low, int64_t high, c10::SymIntArrayRef size, c10::optional<at::Generator> generator, c10::optional<at::ScalarType> dtype, c10::optional<at::Layout> layout, c10::optional<at::Device> device, c10::optional<bool> pin_memory) {
  169. return at::_ops::randint_low_generator::call(low, high, size, generator, dtype, layout, device, pin_memory);
  170. }
  171. namespace symint {
  172. template <typename T, typename = std::enable_if_t<std::is_same<T, c10::SymInt>::value>>
  173. at::Tensor randint(int64_t low, int64_t high, c10::SymIntArrayRef size, c10::optional<at::Generator> generator, c10::optional<at::ScalarType> dtype, c10::optional<at::Layout> layout, c10::optional<at::Device> device, c10::optional<bool> pin_memory) {
  174. return at::_ops::randint_low_generator::call(low, high, size, generator, dtype, layout, device, pin_memory);
  175. }
  176. }
  177. // aten::randint.out(int high, SymInt[] size, *, Tensor(a!) out) -> Tensor(a!)
  178. inline at::Tensor & randint_out(at::Tensor & out, int64_t high, at::IntArrayRef size) {
  179. return at::_ops::randint_out::call(high, c10::fromIntArrayRefSlow(size), out);
  180. }
  181. namespace symint {
  182. template <typename T, typename = std::enable_if_t<std::is_same<T, int64_t>::value>>
  183. at::Tensor & randint_out(at::Tensor & out, int64_t high, at::IntArrayRef size) {
  184. return at::_ops::randint_out::call(high, c10::fromIntArrayRefSlow(size), out);
  185. }
  186. }
  187. // aten::randint.out(int high, SymInt[] size, *, Tensor(a!) out) -> Tensor(a!)
  188. inline at::Tensor & randint_outf(int64_t high, at::IntArrayRef size, at::Tensor & out) {
  189. return at::_ops::randint_out::call(high, c10::fromIntArrayRefSlow(size), out);
  190. }
  191. namespace symint {
  192. template <typename T, typename = std::enable_if_t<std::is_same<T, int64_t>::value>>
  193. at::Tensor & randint_outf(int64_t high, at::IntArrayRef size, at::Tensor & out) {
  194. return at::_ops::randint_out::call(high, c10::fromIntArrayRefSlow(size), out);
  195. }
  196. }
  197. // aten::randint.out(int high, SymInt[] size, *, Tensor(a!) out) -> Tensor(a!)
  198. inline at::Tensor & randint_symint_out(at::Tensor & out, int64_t high, c10::SymIntArrayRef size) {
  199. return at::_ops::randint_out::call(high, size, out);
  200. }
  201. namespace symint {
  202. template <typename T, typename = std::enable_if_t<std::is_same<T, c10::SymInt>::value>>
  203. at::Tensor & randint_out(at::Tensor & out, int64_t high, c10::SymIntArrayRef size) {
  204. return at::_ops::randint_out::call(high, size, out);
  205. }
  206. }
  207. // aten::randint.out(int high, SymInt[] size, *, Tensor(a!) out) -> Tensor(a!)
  208. inline at::Tensor & randint_symint_outf(int64_t high, c10::SymIntArrayRef size, at::Tensor & out) {
  209. return at::_ops::randint_out::call(high, size, out);
  210. }
  211. namespace symint {
  212. template <typename T, typename = std::enable_if_t<std::is_same<T, c10::SymInt>::value>>
  213. at::Tensor & randint_outf(int64_t high, c10::SymIntArrayRef size, at::Tensor & out) {
  214. return at::_ops::randint_out::call(high, size, out);
  215. }
  216. }
  217. // aten::randint.generator_out(int high, SymInt[] size, *, Generator? generator, Tensor(a!) out) -> Tensor(a!)
  218. inline at::Tensor & randint_out(at::Tensor & out, int64_t high, at::IntArrayRef size, c10::optional<at::Generator> generator) {
  219. return at::_ops::randint_generator_out::call(high, c10::fromIntArrayRefSlow(size), generator, out);
  220. }
  221. namespace symint {
  222. template <typename T, typename = std::enable_if_t<std::is_same<T, int64_t>::value>>
  223. at::Tensor & randint_out(at::Tensor & out, int64_t high, at::IntArrayRef size, c10::optional<at::Generator> generator) {
  224. return at::_ops::randint_generator_out::call(high, c10::fromIntArrayRefSlow(size), generator, out);
  225. }
  226. }
  227. // aten::randint.generator_out(int high, SymInt[] size, *, Generator? generator, Tensor(a!) out) -> Tensor(a!)
  228. inline at::Tensor & randint_outf(int64_t high, at::IntArrayRef size, c10::optional<at::Generator> generator, at::Tensor & out) {
  229. return at::_ops::randint_generator_out::call(high, c10::fromIntArrayRefSlow(size), generator, out);
  230. }
  231. namespace symint {
  232. template <typename T, typename = std::enable_if_t<std::is_same<T, int64_t>::value>>
  233. at::Tensor & randint_outf(int64_t high, at::IntArrayRef size, c10::optional<at::Generator> generator, at::Tensor & out) {
  234. return at::_ops::randint_generator_out::call(high, c10::fromIntArrayRefSlow(size), generator, out);
  235. }
  236. }
  237. // aten::randint.generator_out(int high, SymInt[] size, *, Generator? generator, Tensor(a!) out) -> Tensor(a!)
  238. inline at::Tensor & randint_symint_out(at::Tensor & out, int64_t high, c10::SymIntArrayRef size, c10::optional<at::Generator> generator) {
  239. return at::_ops::randint_generator_out::call(high, size, generator, out);
  240. }
  241. namespace symint {
  242. template <typename T, typename = std::enable_if_t<std::is_same<T, c10::SymInt>::value>>
  243. at::Tensor & randint_out(at::Tensor & out, int64_t high, c10::SymIntArrayRef size, c10::optional<at::Generator> generator) {
  244. return at::_ops::randint_generator_out::call(high, size, generator, out);
  245. }
  246. }
  247. // aten::randint.generator_out(int high, SymInt[] size, *, Generator? generator, Tensor(a!) out) -> Tensor(a!)
  248. inline at::Tensor & randint_symint_outf(int64_t high, c10::SymIntArrayRef size, c10::optional<at::Generator> generator, at::Tensor & out) {
  249. return at::_ops::randint_generator_out::call(high, size, generator, out);
  250. }
  251. namespace symint {
  252. template <typename T, typename = std::enable_if_t<std::is_same<T, c10::SymInt>::value>>
  253. at::Tensor & randint_outf(int64_t high, c10::SymIntArrayRef size, c10::optional<at::Generator> generator, at::Tensor & out) {
  254. return at::_ops::randint_generator_out::call(high, size, generator, out);
  255. }
  256. }
  257. // aten::randint.low_out(int low, int high, SymInt[] size, *, Tensor(a!) out) -> Tensor(a!)
  258. inline at::Tensor & randint_out(at::Tensor & out, int64_t low, int64_t high, at::IntArrayRef size) {
  259. return at::_ops::randint_low_out::call(low, high, c10::fromIntArrayRefSlow(size), out);
  260. }
  261. namespace symint {
  262. template <typename T, typename = std::enable_if_t<std::is_same<T, int64_t>::value>>
  263. at::Tensor & randint_out(at::Tensor & out, int64_t low, int64_t high, at::IntArrayRef size) {
  264. return at::_ops::randint_low_out::call(low, high, c10::fromIntArrayRefSlow(size), out);
  265. }
  266. }
  267. // aten::randint.low_out(int low, int high, SymInt[] size, *, Tensor(a!) out) -> Tensor(a!)
  268. inline at::Tensor & randint_outf(int64_t low, int64_t high, at::IntArrayRef size, at::Tensor & out) {
  269. return at::_ops::randint_low_out::call(low, high, c10::fromIntArrayRefSlow(size), out);
  270. }
  271. namespace symint {
  272. template <typename T, typename = std::enable_if_t<std::is_same<T, int64_t>::value>>
  273. at::Tensor & randint_outf(int64_t low, int64_t high, at::IntArrayRef size, at::Tensor & out) {
  274. return at::_ops::randint_low_out::call(low, high, c10::fromIntArrayRefSlow(size), out);
  275. }
  276. }
  277. // aten::randint.low_out(int low, int high, SymInt[] size, *, Tensor(a!) out) -> Tensor(a!)
  278. inline at::Tensor & randint_symint_out(at::Tensor & out, int64_t low, int64_t high, c10::SymIntArrayRef size) {
  279. return at::_ops::randint_low_out::call(low, high, size, out);
  280. }
  281. namespace symint {
  282. template <typename T, typename = std::enable_if_t<std::is_same<T, c10::SymInt>::value>>
  283. at::Tensor & randint_out(at::Tensor & out, int64_t low, int64_t high, c10::SymIntArrayRef size) {
  284. return at::_ops::randint_low_out::call(low, high, size, out);
  285. }
  286. }
  287. // aten::randint.low_out(int low, int high, SymInt[] size, *, Tensor(a!) out) -> Tensor(a!)
  288. inline at::Tensor & randint_symint_outf(int64_t low, int64_t high, c10::SymIntArrayRef size, at::Tensor & out) {
  289. return at::_ops::randint_low_out::call(low, high, size, out);
  290. }
  291. namespace symint {
  292. template <typename T, typename = std::enable_if_t<std::is_same<T, c10::SymInt>::value>>
  293. at::Tensor & randint_outf(int64_t low, int64_t high, c10::SymIntArrayRef size, at::Tensor & out) {
  294. return at::_ops::randint_low_out::call(low, high, size, out);
  295. }
  296. }
  297. // aten::randint.low_generator_out(int low, int high, SymInt[] size, *, Generator? generator, Tensor(a!) out) -> Tensor(a!)
  298. inline at::Tensor & randint_out(at::Tensor & out, int64_t low, int64_t high, at::IntArrayRef size, c10::optional<at::Generator> generator) {
  299. return at::_ops::randint_low_generator_out::call(low, high, c10::fromIntArrayRefSlow(size), generator, out);
  300. }
  301. namespace symint {
  302. template <typename T, typename = std::enable_if_t<std::is_same<T, int64_t>::value>>
  303. at::Tensor & randint_out(at::Tensor & out, int64_t low, int64_t high, at::IntArrayRef size, c10::optional<at::Generator> generator) {
  304. return at::_ops::randint_low_generator_out::call(low, high, c10::fromIntArrayRefSlow(size), generator, out);
  305. }
  306. }
  307. // aten::randint.low_generator_out(int low, int high, SymInt[] size, *, Generator? generator, Tensor(a!) out) -> Tensor(a!)
  308. inline at::Tensor & randint_outf(int64_t low, int64_t high, at::IntArrayRef size, c10::optional<at::Generator> generator, at::Tensor & out) {
  309. return at::_ops::randint_low_generator_out::call(low, high, c10::fromIntArrayRefSlow(size), generator, out);
  310. }
  311. namespace symint {
  312. template <typename T, typename = std::enable_if_t<std::is_same<T, int64_t>::value>>
  313. at::Tensor & randint_outf(int64_t low, int64_t high, at::IntArrayRef size, c10::optional<at::Generator> generator, at::Tensor & out) {
  314. return at::_ops::randint_low_generator_out::call(low, high, c10::fromIntArrayRefSlow(size), generator, out);
  315. }
  316. }
  317. // aten::randint.low_generator_out(int low, int high, SymInt[] size, *, Generator? generator, Tensor(a!) out) -> Tensor(a!)
  318. inline at::Tensor & randint_symint_out(at::Tensor & out, int64_t low, int64_t high, c10::SymIntArrayRef size, c10::optional<at::Generator> generator) {
  319. return at::_ops::randint_low_generator_out::call(low, high, size, generator, out);
  320. }
  321. namespace symint {
  322. template <typename T, typename = std::enable_if_t<std::is_same<T, c10::SymInt>::value>>
  323. at::Tensor & randint_out(at::Tensor & out, int64_t low, int64_t high, c10::SymIntArrayRef size, c10::optional<at::Generator> generator) {
  324. return at::_ops::randint_low_generator_out::call(low, high, size, generator, out);
  325. }
  326. }
  327. // aten::randint.low_generator_out(int low, int high, SymInt[] size, *, Generator? generator, Tensor(a!) out) -> Tensor(a!)
  328. inline at::Tensor & randint_symint_outf(int64_t low, int64_t high, c10::SymIntArrayRef size, c10::optional<at::Generator> generator, at::Tensor & out) {
  329. return at::_ops::randint_low_generator_out::call(low, high, size, generator, out);
  330. }
  331. namespace symint {
  332. template <typename T, typename = std::enable_if_t<std::is_same<T, c10::SymInt>::value>>
  333. at::Tensor & randint_outf(int64_t low, int64_t high, c10::SymIntArrayRef size, c10::optional<at::Generator> generator, at::Tensor & out) {
  334. return at::_ops::randint_low_generator_out::call(low, high, size, generator, out);
  335. }
  336. }
  337. }