mirror of
https://github.com/pytorch/pytorch.git
synced 2025-10-21 21:49:24 +08:00
Let's have some fun. Pull Request resolved: https://github.com/pytorch/pytorch/pull/78828 Approved by: https://github.com/ezyang
28 lines
701 B
C
28 lines
701 B
C
#pragma once
|
|
|
|
#include <torch/csrc/Exceptions.h>
|
|
#include <torch/csrc/python_headers.h>
|
|
#include <torch/csrc/utils/object_ptr.h>
|
|
#include <torch/csrc/utils/python_numbers.h>
|
|
|
|
inline void THPUtils_packInt64Array(
|
|
PyObject* tuple,
|
|
size_t size,
|
|
const int64_t* sizes) {
|
|
for (size_t i = 0; i != size; ++i) {
|
|
PyObject* i64 = THPUtils_packInt64(sizes[i]);
|
|
if (!i64) {
|
|
throw python_error();
|
|
}
|
|
PyTuple_SET_ITEM(tuple, i, i64);
|
|
}
|
|
}
|
|
|
|
inline PyObject* THPUtils_packInt64Array(size_t size, const int64_t* sizes) {
|
|
THPObjectPtr tuple(PyTuple_New(size));
|
|
if (!tuple)
|
|
throw python_error();
|
|
THPUtils_packInt64Array(tuple.get(), size, sizes);
|
|
return tuple.release();
|
|
}
|