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