123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114 |
- #pragma once
- // @generated by torchgen/gen.py from NativeMetaFunction.h
- #include <c10/core/Scalar.h>
- #include <c10/core/Storage.h>
- #include <c10/core/TensorOptions.h>
- #include <c10/util/Deprecated.h>
- #include <c10/util/Optional.h>
- #include <c10/core/QScheme.h>
- #include <ATen/core/Reduction.h>
- #include <ATen/TensorIterator.h>
- #include <ATen/TensorMeta.h>
- #include <tuple>
- #include <vector>
- namespace at {
- namespace meta {
- struct TORCH_API structured_cat : public at::impl::MetaBase {
-
- template <bool DIM = false, bool VALID = false, bool ALL_CONTIGUOUS = false, bool ALL_SAME_DTYPE = false, bool ALL_SAME_SIZES_AND_STRIDE = false, bool MEMORY_FORMAT = false>
- struct TORCH_API precompute_out {
-
- precompute_out<true, VALID, ALL_CONTIGUOUS, ALL_SAME_DTYPE, ALL_SAME_SIZES_AND_STRIDE, MEMORY_FORMAT> set_dim(int64_t value) {
- static_assert(DIM == false, "dim already set");
- precompute_out<true, VALID, ALL_CONTIGUOUS, ALL_SAME_DTYPE, ALL_SAME_SIZES_AND_STRIDE, MEMORY_FORMAT> ret;
- ret.dim = value;
- ret.valid = this->valid;
- ret.all_contiguous = this->all_contiguous;
- ret.all_same_dtype = this->all_same_dtype;
- ret.all_same_sizes_and_stride = this->all_same_sizes_and_stride;
- ret.memory_format = this->memory_format;
- return ret;
- }
-
- precompute_out<DIM, true, ALL_CONTIGUOUS, ALL_SAME_DTYPE, ALL_SAME_SIZES_AND_STRIDE, MEMORY_FORMAT> set_valid(int64_t value) {
- static_assert(VALID == false, "valid already set");
- precompute_out<DIM, true, ALL_CONTIGUOUS, ALL_SAME_DTYPE, ALL_SAME_SIZES_AND_STRIDE, MEMORY_FORMAT> ret;
- ret.dim = this->dim;
- ret.valid = value;
- ret.all_contiguous = this->all_contiguous;
- ret.all_same_dtype = this->all_same_dtype;
- ret.all_same_sizes_and_stride = this->all_same_sizes_and_stride;
- ret.memory_format = this->memory_format;
- return ret;
- }
-
- precompute_out<DIM, VALID, true, ALL_SAME_DTYPE, ALL_SAME_SIZES_AND_STRIDE, MEMORY_FORMAT> set_all_contiguous(bool value) {
- static_assert(ALL_CONTIGUOUS == false, "all_contiguous already set");
- precompute_out<DIM, VALID, true, ALL_SAME_DTYPE, ALL_SAME_SIZES_AND_STRIDE, MEMORY_FORMAT> ret;
- ret.dim = this->dim;
- ret.valid = this->valid;
- ret.all_contiguous = value;
- ret.all_same_dtype = this->all_same_dtype;
- ret.all_same_sizes_and_stride = this->all_same_sizes_and_stride;
- ret.memory_format = this->memory_format;
- return ret;
- }
-
- precompute_out<DIM, VALID, ALL_CONTIGUOUS, true, ALL_SAME_SIZES_AND_STRIDE, MEMORY_FORMAT> set_all_same_dtype(bool value) {
- static_assert(ALL_SAME_DTYPE == false, "all_same_dtype already set");
- precompute_out<DIM, VALID, ALL_CONTIGUOUS, true, ALL_SAME_SIZES_AND_STRIDE, MEMORY_FORMAT> ret;
- ret.dim = this->dim;
- ret.valid = this->valid;
- ret.all_contiguous = this->all_contiguous;
- ret.all_same_dtype = value;
- ret.all_same_sizes_and_stride = this->all_same_sizes_and_stride;
- ret.memory_format = this->memory_format;
- return ret;
- }
-
- precompute_out<DIM, VALID, ALL_CONTIGUOUS, ALL_SAME_DTYPE, true, MEMORY_FORMAT> set_all_same_sizes_and_stride(bool value) {
- static_assert(ALL_SAME_SIZES_AND_STRIDE == false, "all_same_sizes_and_stride already set");
- precompute_out<DIM, VALID, ALL_CONTIGUOUS, ALL_SAME_DTYPE, true, MEMORY_FORMAT> ret;
- ret.dim = this->dim;
- ret.valid = this->valid;
- ret.all_contiguous = this->all_contiguous;
- ret.all_same_dtype = this->all_same_dtype;
- ret.all_same_sizes_and_stride = value;
- ret.memory_format = this->memory_format;
- return ret;
- }
-
- precompute_out<DIM, VALID, ALL_CONTIGUOUS, ALL_SAME_DTYPE, ALL_SAME_SIZES_AND_STRIDE, true> set_memory_format(at::MemoryFormat value) {
- static_assert(MEMORY_FORMAT == false, "memory_format already set");
- precompute_out<DIM, VALID, ALL_CONTIGUOUS, ALL_SAME_DTYPE, ALL_SAME_SIZES_AND_STRIDE, true> ret;
- ret.dim = this->dim;
- ret.valid = this->valid;
- ret.all_contiguous = this->all_contiguous;
- ret.all_same_dtype = this->all_same_dtype;
- ret.all_same_sizes_and_stride = this->all_same_sizes_and_stride;
- ret.memory_format = value;
- return ret;
- }
-
- int64_t dim;
- int64_t valid;
- bool all_contiguous;
- bool all_same_dtype;
- bool all_same_sizes_and_stride;
- at::MemoryFormat memory_format;
- };
- using meta_return_ty = precompute_out <true, true, true, true, true, true>;
- meta_return_ty meta(const at::ITensorListRef & tensors, int64_t dim);
- };
- } // namespace native
- } // namespace at
|