'Iterate over all rules and check if the endpoint expects
the arguments provided.  This is for example useful if you have
some URLs that expect a language code and others that do not and
you want to wrap the builder a bit so that the current language
code is automatically added if not provided but endpoints expect
it.
:param endpoint: the endpoint to check.
:param arguments: this function accepts one or more arguments
as positional arguments.  Each one of them is
checked.'

def is_endpoint_expecting(self, endpoint, *arguments):

    self.update()
    arguments = set(arguments)
    for rule in self._rules_by_endpoint[endpoint]:
        if arguments.issubset(rule.arguments):
            return True
    return False
