/**
  * return the parts of $data that do not contain the search string
  *
  * @param  mixed $data
  *         the collection of input strings to check
  * @param  string $searchString
  *         the string to search for
  * @return mixed|null
  *         returns the parts of $data that do not contain $searchString
  *         returns NULL otherwise
  */
 public static function against($data, $searchString)
 {
     $method = FirstMethodMatchingType::fromMixed($data, self::class, 'against', E4xx_UnsupportedType::class);
     return self::$method($data, $searchString);
 }
 /**
  * create an escaped string from a collection of command + args
  *
  * @param  mixed $data
  *         the data to escape
  * @return string
  *         the command to execute
  */
 public static function from($data)
 {
     $method = FirstMethodMatchingType::fromMixed($data, self::class, 'from', E4xx_UnsupportedType::class);
     return self::$method($data);
 }
 public function tokenise($data, StreamState $state)
 {
     $methodName = FirstMethodMatchingType::fromMixed($data, $this, 'tokenise');
     return self::$methodName($data, $state);
 }