UniCoreFW

wrap()

Wrap a function inside a wrapper function.

Implementation

Args: func: The function to wrap wrapper: The wrapper function that takes func as its first argument Returns: A wrapped function

Example

def add(x, y): return x + y wrapped_add = wrap(add, lambda f, x, y: f(x, y) + 1) wrapped_add(1, 2)

Expected output: 4

Source Code

def wrap(func: Callable, wrapper: Callable) -> Callable: def wrapped(*args, **kwargs): return wrapper(func, *args, **kwargs) return wrapped