Move toString(ScalarType) and ScalarType ostream operator to headeronly (#164405)

Pull Request resolved: https://github.com/pytorch/pytorch/pull/164405
Approved by: https://github.com/Skylion007, https://github.com/janeyx99
ghstack dependencies: #164350, #164354
This commit is contained in:
Pearu Peterson
2025-10-15 14:54:15 +03:00
committed by PyTorch MergeBot
parent 26f3803433
commit ca8bd5dbed
4 changed files with 44 additions and 19 deletions

View File

@ -285,6 +285,25 @@ using ScalarTypeToCPPTypeT = typename ScalarTypeToCPPType<N>::type;
} // namespace impl
inline const char* toString(ScalarType t) {
#define DEFINE_CASE(_, name) \
case ScalarType::name: \
return #name;
switch (t) {
AT_FORALL_SCALAR_TYPES_WITH_COMPLEX_AND_QINTS(DEFINE_CASE)
default:
return "UNKNOWN_SCALAR";
}
#undef DEFINE_CASE
}
inline std::ostream& operator<<(
std::ostream& stream,
at::ScalarType scalar_type) {
return stream << toString(scalar_type);
}
} // namespace c10
namespace torch::headeronly {
@ -295,4 +314,6 @@ using c10::ScalarType;
namespace impl {
using c10::impl::ScalarTypeToCPPTypeT;
} // namespace impl
using c10::toString;
using c10::operator<<;
} // namespace torch::headeronly