human
I wrote the below code

    @functools.wraps(func)
    def wrapped(node, context=None, _func=func, **kwargs):
        'wrapper    function    handling    context'
        if (context is None):
            context = contextmod.InferenceContext()
        if context.push(node):
            return
        yielded = set()
        generator = _func(node, context, **kwargs)
        try:
            while True:
                res = next(generator)
                if (res.__class__.__name__ == 'Instance'):
                    ares = res._proxied
                else:
                    ares = res
                if (ares not in yielded):
                    (yield res)
                    yielded.add(ares)
        except StopIteration as error:
            if error.args:
                raise StopIteration(error.args[0])
            else:
                raise StopIteration
    return wrapped

What's a good function header?

=====
Here's a good function header?
assistant
#Here's a good function header.

def path_wrapper(func):