code: def make_persister(self, to_persist):
          
  
          if not self.meta_data:
              raise Exception("Root not set. Can't create persister.")
  
          def persister(c, broker):
              if c in to_persist:
                  self.dehydrate(c, broker)
          return persister
docs: Returns a function that hydrates components as they are evaluated. The
          function should be registered as an observer on a Broker just before
          execution.
  
          Args:
              to_persist (set): Set of components to persist. Skip everything
                  else.