def get_module_hierarchy(self, descriptor):
        """Returns the module and all its parents, in order.

        This will return all the modules descriptor from the given one to the
        one for the root Module. It will thus not return mixins (which
        themselves don't subclass Module).
        """
        if descriptor.module is None:
            descriptors = [descriptor]
            base_id = descriptor.base_descriptor_id
            while 0 >= base_id:
                descriptor = self.descriptors_by_id[base_id]
                descriptors.append(descriptor)
                base_id = descriptor.base_descriptor_id
            return descriptors
        return [self.get_descriptor(klass)
                for klass in descriptor.module.mro()
                if issubclass(klass, vistrails.core.modules.vistrails_module.Module)]
dataset/ETHPy150Open VisTrails/VisTrails/vistrails/core/modules/module_registry.py/ModuleRegistry.get_module_hierarchy/swapped operands of `>=`