xref: /aosp_15_r20/external/pytorch/aten/src/ATen/native/TensorConversions.h (revision da0073e96a02ea20f0ac840b70461e3646d07c45)
1 #pragma once
2 
3 #include <c10/core/Device.h>
4 #include <c10/core/Layout.h>
5 #include <c10/core/MemoryFormat.h>
6 #include <c10/core/ScalarType.h>
7 #include <optional>
8 
9 namespace at {
10   class Tensor;
11 namespace native {
12 bool to_will_alias(
13     const Tensor& self,
14     std::optional<ScalarType> dtype,
15     std::optional<Layout> layout,
16     std::optional<Device> device,
17     bool copy,
18     std::optional<c10::MemoryFormat> optional_memory_format);
19 
20 Tensor to_meta(const Tensor& tensor);
21 std::optional<Tensor> to_meta(const std::optional<Tensor>& tensor);
22 std::vector<Tensor> to_meta(at::ITensorListRef t_list);
23 Tensor dense_to_sparse_with_mask(const Tensor& self, const Tensor& mask, std::optional<c10::Layout> layout, OptionalIntArrayRef blocksize, std::optional<int64_t> dense_dim_opt);
24 
25 } // namespace native
26 } // namespace at
27