SpiffWorkflow/bpmn/specs/BpmnProcessSpec.py
def get_all_lanes(self):
        """
        Returns a set of the distinct lane names used in the process (including
        called activities)
        """

        done = set()
        lanes = set()

        def recursive_find(task_spec):
            if task_spec in done:
                return

            done.add(task_spec)

            if hasattr(task_spec, 'lane') and task_spec.lane:
                lanes.add(task_spec.lane)

            if hasattr(task_spec, 'spec'):
                recursive_find(task_spec.spec.start)

            for t in task_spec.outputs:
                recursive_find(t)

        recursive_find(self.start)

        return lanes
def get_all_lanes(self):
        """
        Returns a set of the distinct lane names used in the process (including
        called activities)
        """

        done = set()
        lanes = set()

        def recursive_find(task_spec):
            if task_spec in done:
                return

            done.add(task_spec)

            if hasattr(task_spec, 'lane') and task_spec.lane:
                lanes.add(task_spec.lane)

            if hasattr(task_spec, 'spec'):
                recursive_find(task_spec.spec.start)

            for t in task_spec.outputs:
                recursive_find(t)

        recursive_find(self.start)

        return lanes
def get_all_lanes ( self ) : done = set ( ) lanes = set ( ) def recursive_find ( task_spec ) : if task_spec in done : return done . add ( task_spec ) if hasattr ( task_spec , 'lane' ) and task_spec . lane : lanes . add ( task_spec . lane ) if hasattr ( task_spec , 'spec' ) : recursive_find ( task_spec . spec . start ) for t in task_spec . outputs : recursive_find ( t ) recursive_find ( self . start ) return lanes
Returns a set of the distinct lane names used in the process (including
        called activities)
Returns a set of the distinct lane names used in the process ( including called activities )