def action_filter(method_name, *args, **kwargs):
    """
    Creates an effect that will call the action's method with the current
    value and specified arguments and keywords.
    @param method_name: the name of method belonging to the action.
    @type method_name: str
    """

    def action_filter(value, context, **_params):
        method = getattr(context["action"], method_name)
        return _filter(method, value, args, kwargs)

    return action_filter