<?php

namespace danog\PhpDoc\PhpDoc;

use danog\PhpDoc\PhpDoc;
use ReflectionFunction;

/**
 * Function documentation builder.
 *
 * @internal
 */
class FunctionDoc extends MethodDoc
{
    /**
     * Constructor.
     *
     * @param PhpDoc $builder
     * @param ReflectionFunction $reflectionClass
     */
    public function __construct(PhpDoc $builder, ReflectionFunction $reflectionClass)
    {
        $this->builder = $builder;
        $this->name = $reflectionClass->getName();
        parent::__construct($builder, $reflectionClass);
    }
    /**
     * Format function.
     *
     * @return string
     */
    public function format(?string $namespace = null): string
    {
        $formatted = parent::format($namespace);
        $formatted .= "---\n";
        $formatted .= "Generated by [danog/phpdoc](https://phpdoc.daniil.it)\n";
        return $formatted;
    }
}
