def _process_actions(self, actions, inport, packet):
        '''
        Process actions in order, in two stages.  Each action implements a __call__, which
        applies any packet-level changes or other non-output changes.  The functors
        can optionally return another function to be applied at the second stage.
        '''
        second_stage = []
        for a in actions:
            fn = a(packet=packet, net=self._switchyard_net, controllers=self._controller_connections, inport=inport)
            if (fn):
                second_stage.append(fn)
        for fn in second_stage:
            fn()
def _process_actions ( self , actions , inport , packet ) : second_stage = [ ] for a in actions : fn = a ( packet = packet , net = self . _switchyard_net , controllers = self . _controller_connections , inport = inport ) if ( fn ) : second_stage . append ( fn ) for fn in second_stage : fn ( )
Process actions in order, in two stages.  Each action implements a __call__, which
        applies any packet-level changes or other non-output changes.  The functors
        can optionally return another function to be applied at the second stage.