code: def set_update_action (self, action_name, targets, sources, properties=None):
          
          if isinstance(targets, str):
              targets = [targets]
          if isinstance(sources, str):
              sources = [sources]
          if properties is None:
              properties = property_set.empty()
          assert isinstance(action_name, basestring)
          assert is_iterable(targets)
          assert is_iterable(sources)
          assert(isinstance(properties, property_set.PropertySet))
  
          self.do_set_update_action (action_name, targets, sources, properties)
docs: Binds a target to the corresponding update action.
              If target needs to be updated, the action registered
              with action_name will be used.
              The 'action_name' must be previously registered by
              either 'register_action' or 'register_bjam_action'
              method.