Bind arguments and keyword arguments to the encapsulated function.

        Returns a dictionary of parameters (named according to function
        parameters) with the values that were bound to each name.

def bind(self, args, kwargs):
        """
        Bind arguments and keyword arguments to the encapsulated function.

        Returns a dictionary of parameters (named according to function
        parameters) with the values that were bound to each name.
        """
        spec = self._spec
        resolution = self.resolve(args, kwargs)
        params = dict(zip(spec.args, resolution.slots))
        if spec.varargs:
            params[spec.varargs] = resolution.varargs
        if spec.varkw:
            params[spec.varkw] = resolution.varkw
        if spec.kwonlyargs:
            params.update(resolution.kwonlyargs)
        return params