#pragma once #include #include #include namespace c10 { class DynamicLibraryError : public Error { using Error::Error; }; } // namespace c10 namespace at { struct DynamicLibrary { AT_DISALLOW_COPY_AND_ASSIGN(DynamicLibrary); TORCH_API DynamicLibrary( const char* name, const char* alt_name = nullptr, bool leak_handle = false); TORCH_API void* sym(const char* name); TORCH_API ~DynamicLibrary(); private: bool leak_handle; void* handle = nullptr; }; } // namespace at