/**
  * Adds this pattern's listener to an event.
  *
  * @param DispatcherContract $dispatcher
  * @param string             $eventName
  */
 public function bind(DispatcherContract $dispatcher, string $eventName)
 {
     if (isset($this->events[$eventName])) {
         return;
     }
     $dispatcher->attach($eventName, $this->getListener(), $this->priority);
     $this->events[$eventName] = true;
 }