… as equivalent replacements for std::is_pod and std::is_pod_v because they are deprecated in C++20. When consuming libtorch header files in a project that uses C++20, there are warnings about std::is_pod being deprecated. This patch fixes that issue. Pull Request resolved: https://github.com/pytorch/pytorch/pull/88918 Approved by: https://github.com/ezyang |
||
|---|---|---|
| .. | ||
| alloc_cpu.cpp | ||
| alloc_cpu.h | ||
| DeviceGuardImplInterface.cpp | ||
| DeviceGuardImplInterface.h | ||
| FakeGuardImpl.h | ||
| GPUTrace.cpp | ||
| GPUTrace.h | ||
| HermeticPyObjectTLS.cpp | ||
| HermeticPyObjectTLS.h | ||
| InlineDeviceGuard.h | ||
| InlineEvent.h | ||
| InlineStreamGuard.h | ||
| LocalDispatchKeySet.cpp | ||
| LocalDispatchKeySet.h | ||
| PyInterpreter.cpp | ||
| PyInterpreter.h | ||
| PythonDispatcherTLS.cpp | ||
| PythonDispatcherTLS.h | ||
| README.md | ||
| SizesAndStrides.cpp | ||
| SizesAndStrides.h | ||
| TorchDispatchModeTLS.cpp | ||
| TorchDispatchModeTLS.h | ||
| VirtualGuardImpl.h | ||
c10/core/impl provides headers for functionality that is only needed in very specific use-cases (e.g., you are defining a new device type), which are generally only needed by C10 or PyTorch code. If you are an ordinary end-user, you should not use headers in this folder. We permanently give NO backwards-compatibility guarantees for implementations in this folder.
Compare with c10/util, which provides functionality that is not directly related to being a deep learning library (e.g., C++20 polyfills), but may still be generally useful and visible to users.
(We don't call this c10/detail, because the detail namespace convention is for header private details. However, c10::impl may be utilized from external headers; it simply indicates that the functionality is not for end users.)