original_string: protected function _triggerOperator(Query $query, TokenInterface $token)
      {
          $eventName = 'Search.' . (string)Inflector::variable('operator_' . $token->name());
          $event = new Event($eventName, $this->_table, compact('query', 'token'));
  
          return EventManager::instance()->dispatch($event)->result;
      }
code: protected function _triggerOperator(Query $query, TokenInterface $token)
      {
          $eventName = 'Search.' . (string)Inflector::variable('operator_' . $token->name());
          $event = new Event($eventName, $this->_table, compact('query', 'token'));
  
          return EventManager::instance()->dispatch($event)->result;
      }
code_tokens: protected function _triggerOperator ( Query $ query , TokenInterface $ token ) { $ eventName = 'Search.' . ( string ) Inflector :: variable ( 'operator_' . $ token -> name ( ) ) ; $ event = new Event ( $ eventName , $ this -> _table , compact ( 'query' , 'token' ) ) ; return EventManager :: instance ( ) -> dispatch ( $ event ) -> result ; }
docstring: Triggers an event for handling undefined operators. Event listeners may
  capture this event and provide operator handling logic, such listeners should
  alter the provided Query object and then return it back.
  
  The triggered event follows the pattern:
  
  ```
  Search.operator<CamelCaseOperatorName>
  ```
  
  For example, `Search.operatorAuthorName` will be triggered for
  handling an operator named either `author-name` or `author_name`.
  
  @param \Cake\ORM\Query $query The query that is expected to be scoped
  @param \Search\TokenInterface $token Token describing an operator. e.g `-op_name:op_value`
  @return mixed Scoped query object expected or null if event was not captured by any listener
docstring_tokens: Triggers an event for handling undefined operators . Event listeners may capture this event and provide operator handling logic such listeners should alter the provided Query object and then return it back .