#pragma once // @generated by torchgen/gen.py from Operator.h #include #include #include // Forward declarations of any types needed in the operator signatures. // We can't directly include these classes because it will cause circular include dependencies. // This file is included by TensorBody.h, which defines the Tensor class. #include namespace at { namespace _ops { struct TORCH_API linalg_svd { using schema = ::std::tuple (const at::Tensor &, bool, ::std::optional); using ptr_schema = schema*; // See Note [static constexpr char* members for windows NVCC] static constexpr const char* name = "aten::linalg_svd"; static constexpr const char* overload_name = ""; static constexpr const char* schema_str = "linalg_svd(Tensor A, bool full_matrices=True, *, str? driver=None) -> (Tensor U, Tensor S, Tensor Vh)"; static ::std::tuple call(const at::Tensor & A, bool full_matrices, ::std::optional driver); static ::std::tuple redispatch(c10::DispatchKeySet dispatchKeySet, const at::Tensor & A, bool full_matrices, ::std::optional driver); }; struct TORCH_API linalg_svd_U { using schema = ::std::tuple (const at::Tensor &, bool, ::std::optional, at::Tensor &, at::Tensor &, at::Tensor &); using ptr_schema = schema*; // See Note [static constexpr char* members for windows NVCC] static constexpr const char* name = "aten::linalg_svd"; static constexpr const char* overload_name = "U"; static constexpr const char* schema_str = "linalg_svd.U(Tensor A, bool full_matrices=True, *, str? driver=None, Tensor(a!) U, Tensor(b!) S, Tensor(c!) Vh) -> (Tensor(a!) U, Tensor(b!) S, Tensor(c!) Vh)"; static ::std::tuple call(const at::Tensor & A, bool full_matrices, ::std::optional driver, at::Tensor & U, at::Tensor & S, at::Tensor & Vh); static ::std::tuple redispatch(c10::DispatchKeySet dispatchKeySet, const at::Tensor & A, bool full_matrices, ::std::optional driver, at::Tensor & U, at::Tensor & S, at::Tensor & Vh); }; }} // namespace at::_ops