Commit Graph
315 Commits
Author SHA1 Message Date
Mike van Riel 70eadb02df Add tests for covers tag 2015-06-14 08:50:52 +02:00
Mike van Riel 0d29e96332 Add test for Author Tag 2015-06-14 00:33:59 +02:00
Mike van Riel 73185b45fd Moved formatters from Description to tags namespace because they only format a Tag now 2015-06-14 00:02:36 +02:00
Mike van Riel 66c45cf480 Update Serializer to match new architecture and add test for it 2015-06-13 23:41:44 +02:00
Mike van Riel c24f8ead92 Write test for the Description object and stabilize the API 2015-06-13 21:25:21 +02:00
Mike van Riel 53d5adb324 Descriptions were not separated into tags 2015-06-13 20:27:27 +02:00
Mike van Riel ab3ebf467c Add assertions to DocBlock 2015-06-13 18:41:45 +02:00
Mike van Riel c150553124 Add getName() method to tag interface 2015-06-13 18:02:21 +02:00
Mike van Riel e586a50170 Remove final from DescriptionFactory; making an interface is overkill 2015-06-13 18:02:05 +02:00
Mike van Riel 21e6a9679a Re-make Link tag in new image 2015-06-13 18:01:26 +02:00
Mike van Riel 5749b814fb Add test for DocBlock class 2015-06-13 18:01:00 +02:00
Mike van Riel 2c18f0e883 Work towards stabilizing the API.
- Changed Tag to an interface and flattened hierarchy
- Changed Description to accept a list of tags and a template
- Allow auto-wiring when constructing tags
2015-06-13 14:30:43 +02:00
Mike van Riel 18ef0a8055 Refactored 90% of the library 2015-06-12 20:58:56 +02:00
Mike van Riel 58d09836c1 Add interface for the DocBlockFactory 2015-06-10 14:53:41 +02:00
Mike van Riel 53a142d672 Make resolver final 2015-06-08 08:02:07 +02:00
Mike van Riel b54671f51f Introduce Types
phpDocumentor is capable of representing a whole series of types, more
than PHP supports in fact, and this commit represents those types and a
Resolver that is capable of taking a type Expression and resolving that
to a series of Value Objects representing those types.
2015-06-08 07:05:32 +02:00
Mike van Riel fab7169255 Add support for types and improve resolution
As part of the re-architecting of phpDocumentor and its Reflection component
we needed to move the type classes from the \phpDocumentor\Descriptor
namespace to \phpDocumentor\Reflection\Types.

In addition to this I have removed the resolution / type creation from the
Collection class into a new Resolver class that is capable of resolving any
type into a Type or Fqsen object.

This is the first commit with the base classes and a test for the Resolver
functionality in subsequent commits we need to add tests for the other
classes and to refactor the collection object.
2015-06-07 11:03:28 +02:00
Mike van Riel f3f4d07808 Make Context leaner and enable third parties to create them
Contexts are necessary for factories to resolve QSEN into FQSENs based
on partial namespaces and namespace aliases. These provide DocBlocks
with the namespace name and namespace aliases.

The new ContextFactory will enable third parties who don't use
phpDocumentor's Reflection component to construct a Context based on
a class reflector or namespace name (and file contents).
2015-06-06 20:03:59 +02:00
Colin O'Dell b268342bf1 Add support for the league/commonmark Markdown parser 2015-02-23 14:50:38 -05:00
Kévin Dunglas b735f12f62 minor: typo fix in PHPDoc 2015-02-12 13:08:38 +01:00
Mike van Riel fa01efa273 Remove external code coverage and fix scrutinizer issues 2015-02-03 21:43:12 +01:00
Mike van Riel 6142bbbbbf Add missing DocBlock (info). 2014-08-30 11:16:26 +02:00
Mike van Riel fe8652b292 Add support for DocBlock template markers
DocBlocks may start with #@+ and #@- to indicate that they are (the start) of a DocBlock
template or the end of a template.

In this commit I have changed the way a DocBlock is parsed to interpret this information
and added tests to show for it. In addition I have added more comments to the Regular
Expression responsible for splitting a DocBlock to show the business rules more clearly.

This is the first step in implementing https://github.com/phpDocumentor/phpDocumentor2/issues/42.
2014-08-30 11:08:15 +02:00
Alexander Knöbel 236c7c7961 Remove Error display at MethodTag 2014-08-09 12:09:15 +02:00
Mike van Riel 5f8ee928b6 Merge branch 'master' of github.com:phpDocumentor/ReflectionDocBlock 2014-04-26 12:10:44 +02:00
Mike van Riel d798405fae Implement support for Variadic arguments
Fixes https://github.com/phpDocumentor/phpDocumentor2/issues/629, in
this commit we add support for recognizing and displaying variadic
arguments as described in the Variadics RFC on Internals
(https://wiki.php.net/rfc/variadics).

This adds support for describing Variadics even before PHP 5.6, where
this feature is planned.
2014-03-28 10:21:30 +01:00
Siad Ardroumli 832559be31 Fixed method call.
Related to https://github.com/phpDocumentor/phpDocumentor2/pull/1145
2014-03-16 13:23:37 +01:00
Carsten Brandt 4922a4a286 Preserve newlines in docblock tags
This is especially important when using markdown.
Adding a blank line between text introduces a new paragraph.
Current implementation will result in all text staying in one paragraph
and also other elements like lists and code do not get recognized in
most cases.
2014-02-28 17:17:48 +01:00
Mike van Riel 506de88c26 Add support for Parsedown as a markdown parser 2013-12-05 09:16:55 +01:00
Barry vd. Heuvel 21148759ac Add __toString() methods for Description and Tag
And let the Serializer make use of the (string) $tag
2013-05-27 18:16:15 +02:00
Vasil Rangelov 5000a2878d Added "{}" around all double quoted variables, for readability's sake;
Performance improvement in Serializer - wrap length is calculated once during the text portion only. Tags reuse the result. Also no "prefix" adding in tags - the name is simply added before wrapping.
2013-05-27 02:04:23 +03:00
Vasil Rangelov a2aae72328 Minor doc fix at Serializer.php. 2013-05-27 01:31:58 +03:00
Vasil Rangelov 5b2b43e2a9 Added getters for Serializer options;
Swapped the indent and indent string options at Serializer's constructor;
Renamed Serializer::setIndentFirstLine() to setIsFirstLineIndented() in accordance with the getter (PHPMD fix);
Line length is now ACTUALLY line length, i.e. it takes the indentation into account, and is applied to tags as well;
Fixed ReturnTag::setContent() to set "types" to NULL;
A lot of doc and CS fixes at Serializer.php.
2013-05-27 01:27:07 +03:00
Barry vd. Heuvel 6ac49cd709 Revert setType
Doesn't really belong to this PR
2013-05-26 22:36:53 +02:00
Barry vd. Heuvel eb4ab2c720 Move serializer to seperate class 2013-05-26 22:36:31 +02:00
Barry vd. Heuvel f331d328a4 Export DocBlock & full description
Add get/set for entire description, and create a docblock comment, based
on the description/tags
2013-05-26 21:17:09 +02:00
Barry vd. Heuvel 3760d10ace Set return type 2013-05-26 21:16:30 +02:00
Vasil Rangelov d99732612a Added support for static method declarations at MethodTag and according unit tests.
Fixed MethodTag::getContent() to actually return the content as opposed to $this;
2013-05-16 22:17:15 +03:00
Vasil Rangelov 7f55602948 Adjusted Unit tests and docs to match the latest dot separation. 2013-04-16 19:25:40 +03:00
Vasil Rangelov 510159bace Fixed the dot separation to match the latest PSR
(see phpDocumentor/phpDocumentor2#797)
2013-04-16 17:22:15 +03:00
Jon Cave 8f7ec6bd4a Fix typo in "cotnent" 2013-02-01 18:08:30 +00:00
Vasil Rangelov 13466286b0 Added "scalar" as a recognized keyword (phpDocumentor/phpDocumentor2#694);
Changed the list of keywords to be static (for the purpose of reducing memory consumption);
Updated composer.lock with the latest dependencies (PHPUnit in particular).
2012-12-02 22:26:45 +02:00
Vasil Rangelov ff09e61782 Added setters at Location and Description;
Added DocBlock::appendTag();
Minor reorganization at the tag setters;
2012-11-30 22:37:41 +02:00
Vasil Rangelov 8223e475fa Refactored all tags to have setters for all of their components;
Removed the special handling for VarTag (it's now equivalent to ParamTag);
Minor doc, CS and coverage fixes.
2012-11-30 19:26:19 +02:00
Vasil Rangelov 23dedb3e10 CS fixes. 2012-11-27 19:52:28 +02:00
Vasil Rangelov bf3e86788d Added tests related to the namespaced tag support;
Restored ReturnTag::getTypesCollection() to "protected", to avoid potential BC breaks later.
2012-11-22 01:23:31 +02:00
Vasil Rangelov 2dbc608a51 Added support for namespaced tags;
Simplified @see and @link parsing;
Added comments to the regexes of @method, @example and @source;
Added a test case for what 2812eac046 intended to fix.
2012-11-22 00:37:22 +02:00
Vasil Rangelov 8bb304309c Introduced Context and Location, and adapted Collection and ReturnTag accordingly. 2012-11-21 15:55:10 +02:00
Vasil Rangelov a4b899e96c Reverted the move of explode() into Return, and moved the implode() into Collection's new __toString() method instead;
Also had to made type resolution lazy, as a pleasant side effect.

This reverts commit db20ae39fb.
2012-11-18 18:50:45 +02:00
Vasil Rangelov cee63f991d Revert "Merge pull request #10 from boenrobot/author"
This reverts commit 21c36677ab, reversing
changes made to ffcaa03337.
2012-11-18 17:15:48 +02:00