def register_decorator(func): validator.check_type("op_info", op_info, [str]) op_lib = Oplib() file_path = os.path.realpath(inspect.getfile(func)) # keep the path custom ops implementation. imply_path = "" if BUILT_IN_OPS_REGISTER_PATH in file_path else file_path if not op_lib.reg_op(op_info, imply_path): raise ValueError('Invalid op info {}:\n{}\n'.format( file_path, op_info)) def wrapped_function(*args, **kwargs): return func(*args, **kwargs) return wrapped_function
def register_decorator(func): if isinstance(op_info, dict): op_info_real = json.dumps(op_info) else: op_info_real = op_info validator.check_value_type("op_info", op_info_real, [str]) op_lib = Oplib() file_path = os.path.realpath(inspect.getfile(func)) # keep the path custom ops implementation. if BUILT_IN_CUSTOM_OPS_REGISTER_PATH in file_path: imply_path = file_path else: imply_path = "" if BUILT_IN_OPS_REGISTER_PATH in file_path else file_path if not op_lib.reg_op(op_info_real, imply_path): raise ValueError('Invalid op info {}:\n{}\n'.format(file_path, op_info_real)) def wrapped_function(*args, **kwargs): return func(*args, **kwargs) return wrapped_function