PHP Класс Robo\Task\Development\GenerateMarkdownDoc

Takes classes, properties and methods with their docblocks and writes down a markdown file. php taskGenDoc('models.md') ->docClass('Model\User') // take class Model\User ->docClass('Model\Post') // take class Model\Post ->filterMethods(function(\ReflectionMethod $r) { return $r->isPublic() or $r->isProtected(); // process public and protected methods })->processClass(function(\ReflectionClass $r, $text) { return "Class ".$r->getName()."\n\n$text\n\n###Methods\n"; })->run(); By default this task generates a documentation for each public method of a class. It combines method signature with a docblock. Both can be post-processed. php taskGenDoc('models.md') ->docClass('Model\User') ->processClassSignature(false) // false can be passed to not include class signature ->processClassDocBlock(function(\ReflectionClass $r, $text) { return "[This is part of application model]\n" . $text; })->processMethodSignature(function(\ReflectionMethod $r, $text) { return "#### {$r->name}()"; })->processMethodDocBlock(function(\ReflectionMethod $r, $text) { return strpos($r->name, 'save')===0 ? "[Saves to the database]\n" . $text : $text; })->run();
Наследование: extends Robo\Task\BaseTask, implements Robo\Contract\BuilderAwareInterface, use trait Robo\Common\BuilderAwareTrait
Показать файл Открыть проект

Защищенные свойства (Protected)

Свойство Тип Описание
$append string
$docClass string[]
$filename string
$filterClasses callable
$filterMethods callable
$filterProperties callable
$prepend string
$processClass callable
$processClassDocBlock callable | false
$processClassSignature callable | false
$processMethod callable | false
$processMethodDocBlock callable | false
$processMethodSignature callable | false
$processProperty callable | false
$processPropertyDocBlock callable | false
$processPropertySignature callable | false
$reorder callable
$reorderMethods callable
$reorderProperties callable
$text string
$textForClass string[]

Открытые методы

Метод Описание
__construct ( string $filename )
append ( string $append )
docClass ( string $item )
filename ( string $filename )
filterClasses ( callable $filterClasses )
filterMethods ( callable $filterMethods )
filterProperties ( callable $filterProperties )
indentDoc ( string $doc, integer $indent = 3 ) : string
init ( string $filename ) : static
prepend ( string $prepend )
processClass ( callable $processClass )
processClassDocBlock ( callable | false $processClassDocBlock )
processClassSignature ( callable | false $processClassSignature )
processMethod ( callable | false $processMethod )
processMethodDocBlock ( callable | false $processMethodDocBlock )
processMethodSignature ( callable | false $processMethodSignature )
processProperty ( callable | false $processProperty )
processPropertyDocBlock ( callable | false $processPropertyDocBlock )
processPropertySignature ( callable | false $processPropertySignature )
reorder ( callable $reorder )
reorderMethods ( callable $reorderMethods )
reorderProperties ( callable $reorderProperties )
run ( )
text ( string $text )
textForClass ( string $item )

Защищенные методы

Метод Описание
documentClass ( string $class ) : null | string
documentClassDocBlock ( ReflectionClass $reflectionClass ) : string
documentClassSignature ( ReflectionClass $reflectionClass ) : string
documentMethod ( ReflectionMethod $reflectedMethod ) : string
documentMethodDocBlock ( ReflectionMethod $reflectedMethod ) : string
documentMethodSignature ( ReflectionMethod $reflectedMethod ) : string
documentParam ( ReflectionParameter $param ) : string
documentProperty ( ReflectionProperty $reflectedProperty ) : string
documentPropertyDocBlock ( ReflectionProperty $reflectedProperty ) : string
documentPropertySignature ( ReflectionProperty $reflectedProperty ) : string

Описание методов

__construct() публичный Метод

public __construct ( string $filename )
$filename string

append() публичный Метод

public append ( string $append )
$append string

docClass() публичный Метод

public docClass ( string $item )
$item string

documentClass() защищенный Метод

protected documentClass ( string $class ) : null | string
$class string
Результат null | string

documentClassDocBlock() защищенный Метод

protected documentClassDocBlock ( ReflectionClass $reflectionClass ) : string
$reflectionClass ReflectionClass
Результат string

documentClassSignature() защищенный Метод

protected documentClassSignature ( ReflectionClass $reflectionClass ) : string
$reflectionClass ReflectionClass
Результат string

documentMethod() защищенный Метод

protected documentMethod ( ReflectionMethod $reflectedMethod ) : string
$reflectedMethod ReflectionMethod
Результат string

documentMethodDocBlock() защищенный Метод

protected documentMethodDocBlock ( ReflectionMethod $reflectedMethod ) : string
$reflectedMethod ReflectionMethod
Результат string

documentMethodSignature() защищенный Метод

protected documentMethodSignature ( ReflectionMethod $reflectedMethod ) : string
$reflectedMethod ReflectionMethod
Результат string

documentParam() защищенный Метод

protected documentParam ( ReflectionParameter $param ) : string
$param ReflectionParameter
Результат string

documentProperty() защищенный Метод

protected documentProperty ( ReflectionProperty $reflectedProperty ) : string
$reflectedProperty ReflectionProperty
Результат string

documentPropertyDocBlock() защищенный Метод

protected documentPropertyDocBlock ( ReflectionProperty $reflectedProperty ) : string
$reflectedProperty ReflectionProperty
Результат string

documentPropertySignature() защищенный Метод

protected documentPropertySignature ( ReflectionProperty $reflectedProperty ) : string
$reflectedProperty ReflectionProperty
Результат string

filename() публичный Метод

public filename ( string $filename )
$filename string

filterClasses() публичный Метод

public filterClasses ( callable $filterClasses )
$filterClasses callable

filterMethods() публичный Метод

public filterMethods ( callable $filterMethods )
$filterMethods callable

filterProperties() публичный Метод

public filterProperties ( callable $filterProperties )
$filterProperties callable

indentDoc() публичный статический Метод

public static indentDoc ( string $doc, integer $indent = 3 ) : string
$doc string
$indent integer
Результат string

init() публичный статический Метод

public static init ( string $filename ) : static
$filename string
Результат static

prepend() публичный Метод

public prepend ( string $prepend )
$prepend string

processClass() публичный Метод

public processClass ( callable $processClass )
$processClass callable

processClassDocBlock() публичный Метод

public processClassDocBlock ( callable | false $processClassDocBlock )
$processClassDocBlock callable | false

processClassSignature() публичный Метод

public processClassSignature ( callable | false $processClassSignature )
$processClassSignature callable | false

processMethod() публичный Метод

public processMethod ( callable | false $processMethod )
$processMethod callable | false

processMethodDocBlock() публичный Метод

public processMethodDocBlock ( callable | false $processMethodDocBlock )
$processMethodDocBlock callable | false

processMethodSignature() публичный Метод

public processMethodSignature ( callable | false $processMethodSignature )
$processMethodSignature callable | false

processProperty() публичный Метод

public processProperty ( callable | false $processProperty )
$processProperty callable | false

processPropertyDocBlock() публичный Метод

public processPropertyDocBlock ( callable | false $processPropertyDocBlock )
$processPropertyDocBlock callable | false

processPropertySignature() публичный Метод

public processPropertySignature ( callable | false $processPropertySignature )
$processPropertySignature callable | false

reorder() публичный Метод

public reorder ( callable $reorder )
$reorder callable

reorderMethods() публичный Метод

public reorderMethods ( callable $reorderMethods )
$reorderMethods callable

reorderProperties() публичный Метод

public reorderProperties ( callable $reorderProperties )
$reorderProperties callable

run() публичный Метод

public run ( )

text() публичный Метод

public text ( string $text )
$text string

textForClass() публичный Метод

public textForClass ( string $item )
$item string

Описание свойств

$append защищенное свойство

protected string $append
Результат string

$docClass защищенное свойство

protected string[] $docClass
Результат string[]

$filename защищенное свойство

protected string $filename
Результат string

$filterClasses защищенное свойство

protected callable $filterClasses
Результат callable

$filterMethods защищенное свойство

protected callable $filterMethods
Результат callable

$filterProperties защищенное свойство

protected callable $filterProperties
Результат callable

$prepend защищенное свойство

protected string $prepend
Результат string

$processClass защищенное свойство

protected callable $processClass
Результат callable

$processClassDocBlock защищенное свойство

protected callable|false $processClassDocBlock
Результат callable | false

$processClassSignature защищенное свойство

protected callable|false $processClassSignature
Результат callable | false

$processMethod защищенное свойство

protected callable|false $processMethod
Результат callable | false

$processMethodDocBlock защищенное свойство

protected callable|false $processMethodDocBlock
Результат callable | false

$processMethodSignature защищенное свойство

protected callable|false $processMethodSignature
Результат callable | false

$processProperty защищенное свойство

protected callable|false $processProperty
Результат callable | false

$processPropertyDocBlock защищенное свойство

protected callable|false $processPropertyDocBlock
Результат callable | false

$processPropertySignature защищенное свойство

protected callable|false $processPropertySignature
Результат callable | false

$reorder защищенное свойство

protected callable $reorder
Результат callable

$reorderMethods защищенное свойство

protected callable $reorderMethods
Результат callable

$reorderProperties защищенное свойство

protected callable $reorderProperties
Результат callable

$text защищенное свойство

protected string $text
Результат string

$textForClass защищенное свойство

protected string[] $textForClass
Результат string[]