code: def register_func_list(self, func_and_handler):
          
          for func, handler in func_and_handler:
              self._function_dispatch.register(func, handler)
          self.dispatch.cache_clear()
docs: register a function to determine if the handle
              should be used for the type