Add ability to customize ORT_CXX_API_THROW (#10688)

This commit is contained in:
Ryan Hill 2022-02-28 00:15:10 -08:00 committed by GitHub
parent 240f31ef6e
commit eb116595d4
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -56,9 +56,13 @@ struct Exception : std::exception {
abort(); \
} while (false)
#else
// The #ifndef is for the very special case where the user of this library wants to define their own way of handling errors.
// NOTE: This header expects control flow to not continue after calling ORT_CXX_API_THROW
#ifndef ORT_CXX_API_THROW
#define ORT_CXX_API_THROW(string, code) \
throw Ort::Exception(string, code)
#endif
#endif
// This is used internally by the C++ API. This class holds the global variable that points to the OrtApi, it's in a template so that we can define a global variable in a header and make
// it transparent to the users of the API.