Mike van Riel 0701e60839 Change behaviour of @param parsing
In issue report phpDocumentor/phpDocumentor2#620 @bobef reported that when he
used just a Type as content of the @param that it would be recognized as
description instead of the Type.

According to the unit tests this is correct behaviour but after reviewing the
pattern of the output his version is more consistent. As such I have altered
the behaviour to act as following:

If only one word is found after an @param (word means white-space bounded
series of characters) then interpret that as the type and not description.

During this item several issues in unit tests were fixed and a new 'Type'
Collection was introduced that is capable of expanding types based on a given
namespace and series of aliases.
This should be re-used in phpDocumentor's Transformer as a duplication exists
there with the expanding of the Types.

Please note: the suggested format by @bobef is not valid according to the
PHPDoc Standard but is provided for convenience.
2012-11-03 22:14:43 +01:00
2012-11-03 22:14:43 +01:00

The ReflectionDocBlock Component

Introduction

The ReflectionDocBlock component of phpDocumentor provides a DocBlock parser that is 100% compatible with the PHPDoc standard.

With this component can a library provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.

Note

: this is a core component of phpDocumentor and is constantly being optimized for performance.

Installation

You can install the component in the following ways:

Usage

The ReflectionDocBlock component is designed to work in an identical fashion to PHP's own Reflection extension (http://php.net/manual/en/book.reflection.php).

Parsing can be initiated by instantiating the \phpDocumentor\Reflection\DocBlock() class and passing it a string containing a DocBlock (including asterisks) or by passing an object supporting the getDocComment() method.

Examples of objects having the getDocComment() method are the ReflectionClass and the ReflectionMethod classes of the PHP Reflection extension

Example:

$class = new ReflectionClass('MyClass');
$phpdoc = new \phpDocumentor\Reflection\DocBlock($class);

or

$docblock = <<<DOCBLOCK
/**
 * This is a short description.
 *
 * This is a *long* description.
 *
 * @return void
 */
DOCBLOCK;

$phpdoc = new \phpDocumentor\Reflection\DocBlock($docblock);
S
Description
No description provided
Readme MIT
1.7 MiB
Languages
PHP 100%