protected function writeMethodElements($methods, $format = '%s %s()\l', $indent = -1)
    {
        $methodString = '';

        foreach ($methods as $method) {
            if ($method->isPrivate()) {
                $visibility = '-';
            } elseif ($method->isProtected()) {
                $visibility = '#';
            } else {
                $visibility = '+';
            }

            if ($method->isStatic()) {
                $modifier = '<u>%s</u>';
            } elseif ($method->isAbstract()) {
                $modifier = '<i>%s</i>';
            } else {
                $modifier = '%s';
            }

            $line = sprintf(
                $format,
                $visibility,
                sprintf($modifier, $method->getShortName())
            );
            if ($indent >= 0) {
                $methodString .= $this->formatLine($line, $indent);
            } else {
                $methodString .= $line;
            }
        }
        return $methodString;
    }