original_string: public function assert(MatcherInterface $matcher)
      {
          if ($this->flag('not')) {
              $matcher->invert();
          }
  
          $match = $matcher
              ->setAssertion($this)
              ->match($this->getActual());
  
          $message = $this->flag('message');
  
          $this->clearFlags();
  
          $this->responder->respond($match, $matcher->getTemplate(), $message);
  
          return $this;
      }
code: public function assert(MatcherInterface $matcher)
      {
          if ($this->flag('not')) {
              $matcher->invert();
          }
  
          $match = $matcher
              ->setAssertion($this)
              ->match($this->getActual());
  
          $message = $this->flag('message');
  
          $this->clearFlags();
  
          $this->responder->respond($match, $matcher->getTemplate(), $message);
  
          return $this;
      }
code_tokens: public function assert ( MatcherInterface $ matcher ) { if ( $ this -> flag ( 'not' ) ) { $ matcher -> invert ( ) ; } $ match = $ matcher -> setAssertion ( $ this ) -> match ( $ this -> getActual ( ) ) ; $ message = $ this -> flag ( 'message' ) ; $ this -> clearFlags ( ) ; $ this -> responder -> respond ( $ match , $ matcher -> getTemplate ( ) , $ message ) ; return $ this ; }
docstring: Assert against the given matcher.
  
  @param $result
  @return $this
docstring_tokens: Assert against the given matcher .