code: def watch(self, path, func=None, delay=0, ignore=None):
          
          self._tasks[path] = {
              'func': func,
              'delay': delay,
              'ignore': ignore,
          }
docs: Add a task to watcher.
  
          :param path: a filepath or directory path or glob pattern
          :param func: the function to be executed when file changed
          :param delay: Delay sending the reload message. Use 'forever' to
                        not send it. This is useful to compile sass files to
                        css, but reload on changed css files then only.
          :param ignore: A function return True to ignore a certain pattern of
                         filepath.