def source_get(method_name):
    """
    Creates a getter that will drop the current value,
    and call the source's method with specified name
    using the context's key as first argument.
    @param method_name: the name of a method belonging to the source.
    @type method_name: str
    """

    def source_get(_value, context, **_params):
        method = getattr(context["model"].source, method_name)
        return _get(method, context["key"], (), {})

    return source_get
Creates a getter that will drop the current value,
    and call the source's method with specified name
    using the context's key as first argument.
    @param method_name: the name of a method belonging to the source.
    @type method_name: str