| |
| |
|
|
| #pragma once |
|
|
| #include <Python.h> |
|
|
| #define _CONCAT(A, B) A##B |
| #define CONCAT(A, B) _CONCAT(A, B) |
|
|
| #define _STRINGIFY(A) #A |
| #define STRINGIFY(A) _STRINGIFY(A) |
|
|
| |
| |
| #define TORCH_LIBRARY_EXPAND(NAME, MODULE) TORCH_LIBRARY(NAME, MODULE) |
|
|
| |
| |
| #define TORCH_LIBRARY_IMPL_EXPAND(NAME, DEVICE, MODULE) \ |
| TORCH_LIBRARY_IMPL(NAME, DEVICE, MODULE) |
|
|
| |
| |
| #define REGISTER_EXTENSION(NAME) \ |
| PyMODINIT_FUNC CONCAT(PyInit_, NAME)() { \ |
| static struct PyModuleDef module = {PyModuleDef_HEAD_INIT, \ |
| STRINGIFY(NAME), nullptr, 0, nullptr}; \ |
| return PyModule_Create(&module); \ |
| } |
|
|