original_string: private function getFailure(MethodInvocation $invocation, FailureInterface $failure, \ReflectionMethod $onFailure = null)
      {
          if ($onFailure) {
              return $onFailure->invoke($invocation->getThis(), $failure);
          }
  
          return $this->failureException($invocation, $failure);
      }
code: private function getFailure(MethodInvocation $invocation, FailureInterface $failure, \ReflectionMethod $onFailure = null)
      {
          if ($onFailure) {
              return $onFailure->invoke($invocation->getThis(), $failure);
          }
  
          return $this->failureException($invocation, $failure);
      }
code_tokens: private function getFailure ( MethodInvocation $ invocation , FailureInterface $ failure , \ ReflectionMethod $ onFailure = null ) { if ( $ onFailure ) { return $ onFailure -> invoke ( $ invocation -> getThis ( ) , $ failure ) ; } return $ this -> failureException ( $ invocation , $ failure ) ; }
docstring: Return result OnFailure
  
  @param MethodInvocation  $invocation
  @param FailureInterface  $failure
  @param \ReflectionMethod $onFailure
  
  @return mixed|InvalidArgumentException
docstring_tokens: Return result OnFailure