/usr/local/lib64/python3.6/site-packages/torch/include/torch/csrc/jit
Edit: /usr/local/lib64/python3.6/site-packages/torch/include/torch/csrc/jit/resource_guard.h (476B)
#pragma once
#include
namespace torch {
namespace jit {
class ResourceGuard {
std::function _destructor;
bool _released;
public:
ResourceGuard(std::function destructor)
: _destructor(std::move(destructor)), _released(false) {}
// NOLINTNEXTLINE(bugprone-exception-escape)
~ResourceGuard() {
if (!_released)
_destructor();
}
void release() {
_released = true;
}
};
} // namespace jit
} // namespace torch