tvm_ffi.register_error

Contents

tvm_ffi.register_error#

tvm_ffi.register_error(name_or_cls=None, cls=None)[source]#

Register an error class so it can be recognized by the ffi error handler.

Parameters:
  • name_or_cls (str | type | None, default: None) – The name of the error class.

  • cls (type | None, default: None) – The class to register.

Return type:

Any

Returns:

fregister – Register function if f is not specified.

Examples

import tvm_ffi

# Register a custom Python exception so tvm_ffi.Error maps to it
@tvm_ffi.error.register_error
class MyError(RuntimeError):
    pass

# Convert a Python exception to an FFI Error and back
ffi_err = tvm_ffi.convert(MyError("boom"))
py_err = ffi_err.py_error()
assert isinstance(py_err, MyError)