original_string: protected function full_tag_found_in_cache($tagname, $latestline) {
          // Return entire element if found. Otherwise return false.
          if (strpos(strtolower($latestline), '</'.strtolower($tagname).'>') === false) {
              return false;
          } else if (preg_match('{(<'.$tagname.'\b.*?>.*?</'.$tagname.'>)}is', $this->xmlcache, $matches)) {
              return $matches[1];
          } else {
              return false;
          }
      }
code: protected function full_tag_found_in_cache($tagname, $latestline) {
          // Return entire element if found. Otherwise return false.
          if (strpos(strtolower($latestline), '</'.strtolower($tagname).'>') === false) {
              return false;
          } else if (preg_match('{(<'.$tagname.'\b.*?>.*?</'.$tagname.'>)}is', $this->xmlcache, $matches)) {
              return $matches[1];
          } else {
              return false;
          }
      }
code_tokens: protected function full_tag_found_in_cache ( $ tagname , $ latestline ) { // Return entire element if found. Otherwise return false. if ( strpos ( strtolower ( $ latestline ) , '</' . strtolower ( $ tagname ) . '>' ) === false ) { return false ; } else if ( preg_match ( '{(<' . $ tagname . '\b.*?>.*?</' . $ tagname . '>)}is' , $ this -> xmlcache , $ matches ) ) { return $ matches [ 1 ] ; } else { return false ; } }
docstring: Check if a complete tag is found in the cached data, which usually happens
  when the end of the tag has only just been loaded into the cache.
  
  @param string $tagname Name of tag to look for
  @param string $latestline The very last line in the cache (used for speeding up the match)
  @return bool|string false, or the contents of the tag (including start and end).
docstring_tokens: Check if a complete tag is found in the cached data which usually happens when the end of the tag has only just been loaded into the cache .