def extended_arg_patterns(self):
        """Iterator over patterns for positional arguments to be matched

        This yields the elements of :attr:`args`, extended by their `mode`
        value
        """
        for arg in self._arg_iterator(self.args):
            if isinstance(arg, Pattern):
                if arg.mode > self.single:
                    while True:
                        yield arg
                else:
                    yield arg
            else:
                yield arg
Iterator over patterns for positional arguments to be matched

        This yields the elements of :attr:`args`, extended by their `mode`
        value