function _doCodeBlocks_callback($matches)
 {
     if ($m = $this->hasShebang($matches[1])) {
         return $this->_doGeshi($m);
     } else {
         return parent::_doCodeBlocks_callback($matches);
     }
 }
 /**
  * Callback function when a code block is matched.
  * @param array matches
  * @return string the highlighted code block
  */
 public function _doCodeBlocks_callback($matches)
 {
     $codeblock = $this->outdent($matches[1]);
     if (($codeblock = $this->highlightCodeBlock($codeblock)) !== null) {
         return "\n\n" . $this->hashBlock($codeblock) . "\n\n";
     } else {
         return parent::_doCodeBlocks_callback($matches);
     }
 }
 /**
  * Overrides parent, rtrim code first
  */
 public function _doCodeBlocks_callback($matches)
 {
     $codeblock = rtrim($this->outdent($matches[1]));
     if (($codeblock = $this->highlightCodeBlock($codeblock)) !== null) {
         return "\n\n" . $this->hashBlock($codeblock) . "\n\n";
     } else {
         return \MarkdownExtra_Parser::_doCodeBlocks_callback($matches);
     }
 }