level-zero icon indicating copy to clipboard operation
level-zero copied to clipboard

Convenience method for error processing

Open kurapov-peter opened this issue 2 years ago • 0 comments

Hi!

More often than not, error handling by the returned value takes the form of some macro checks that emit an exception or similar. E.g.,

#define L0_SAFE_CALL(call)                     \
  {                                            \
    auto status = (call);                      \
    if (status) {                              \
      throw some_exception(to_string(status)); \
    }                                          \
  }

To create a meaningful message it would be convenient to have a method in the loader that would take a single parameter - an error code - and return a string with the failure name. Even exposing the already-existing to_string function (https://github.com/oneapi-src/level-zero/blob/master/source/loader/ze_loader.cpp#L23) would be nice. This will make consumers not replicate it and avoid potential mismatches in case of any changes in the future.

kurapov-peter avatar Feb 13 '24 09:02 kurapov-peter