src/streamlink/options.py
def requires(self, name):
        """
        Find all the arguments required by name

        :param name: name of the argument the find the dependencies

        :return: list of dependant arguments
        """
        results = set([name])
        argument = self.get(name)
        for reqname in argument.requires:
            required = self.get(reqname)
            if not required:
                raise KeyError("{0} is not a valid argument for this plugin".format(reqname))

            if required.name in results:
                raise RuntimeError("cycle detected in plugin argument config")
            results.add(required.name)
            yield required

            for r in self.requires(required.name):
                if r.name in results:
                    raise RuntimeError("cycle detected in plugin argument config")
                results.add(r.name)
                yield r
def requires(self, name):
        results = set([name])
        argument = self.get(name)
        for reqname in argument.requires:
            required = self.get(reqname)
            if not required:
                raise KeyError("{0} is not a valid argument for this plugin".format(reqname))

            if required.name in results:
                raise RuntimeError("cycle detected in plugin argument config")
            results.add(required.name)
            yield required

            for r in self.requires(required.name):
                if r.name in results:
                    raise RuntimeError("cycle detected in plugin argument config")
                results.add(r.name)
                yield r
def requires ( self , name ) : results = set ( [ name ] ) argument = self . get ( name ) for reqname in argument . requires : required = self . get ( reqname ) if not required : raise KeyError ( "{0} is not a valid argument for this plugin" . format ( reqname ) ) if required . name in results : raise RuntimeError ( "cycle detected in plugin argument config" ) results . add ( required . name ) yield required for r in self . requires ( required . name ) : if r . name in results : raise RuntimeError ( "cycle detected in plugin argument config" ) results . add ( r . name ) yield r
Find all the arguments required by name

        :param name: name of the argument the find the dependencies

        :return: list of dependant arguments
Find all the arguments required by name