code: public function dump($abs)
  	{
          $title = \trim($abs['phpDoc']['summary']."\n\n".$abs['phpDoc']['description']);
          $strClassName = $this->debug->output->html->markupClassname($abs['className'], 'span', array(
              'title' => $title ?: null,
          ));
          if ($abs['isRecursion']) {
              return $strClassName
                  .' <span class="t_recursion">*RECURSION*</span>';
          }
          if ($abs['isExcluded']) {
              return $this->dumpToString($abs)
                  .$strClassName."\n"
                  .'<span class="excluded">(not inspected)</span>';
          }
          $html = $this->dumpToString($abs)
              .$strClassName."\n"
              .'<dl class="object-inner">'."\n"
                  .'<dt>extends</dt>'."\n"
                      .'<dd class="extends">'.\implode('</dd>'."\n".'<dd class="extends">', $abs['extends']).'</dd>'."\n"
                  .'<dt>implements</dt>'."\n"
                      .'<dd class="interface">'.\implode('</dd>'."\n".'<dd class="interface">', $abs['implements']).'</dd>'."\n"
                  .$this->dumpConstants($abs['constants'])
                  .$this->dumpProperties($abs)
                  .($abs['collectMethods'] && $this->debug->output->getCfg('outputMethods')
                      ? $this->dumpMethods($abs['methods'])
                      : '')
                  .$this->dumpPhpDoc($abs['phpDoc'])
              .'</dl>'."\n";
          // remove <dt>'s with empty <dd>'
          $html = \preg_replace('#<dt[^>]*>\w+</dt>\s*<dd[^>]*></dd>\s*#', '', $html);
          $html = \str_replace(' title=""', '', $html);
          return $html;
      }
docs: Dump object as html
  
  @param array $abs object abstraction
  
  @return string