diff -Nru phpdox-0.11.2/build.xml phpdox-0.12.0/build.xml
--- phpdox-0.11.2/build.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/build.xml 2019-03-13 09:34:17.000000000 +0000
@@ -132,7 +132,7 @@
-
+
@@ -150,6 +150,22 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff -Nru phpdox-0.11.2/CHANGELOG.md phpdox-0.12.0/CHANGELOG.md
--- phpdox-0.11.2/CHANGELOG.md 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/CHANGELOG.md 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,22 @@
# Changelog of phpDox
+## phpDox 0.12.0 (13 Mar 2019)
+
+Note: This release requires PHP 7.1+
+
+### Changed
+* Upgraded dependencies: Now using PHP-Parser ^4.2, PHP-Timer ^2.0
+* Changed all sources to follow PHP 7 syntax
+* Updated php core classes and interfaces data
+
+### Fixed
+* [#271](https://github.com/theseer/phpdox/issues/271): Fix TokenFile not Found Error on Windows
+
+### Merged
+* [#352](https://github.com/theseer/phpdox/pull/352): Fix bad exit status 255 generated by uncaught TypeError
+* [#335](https://github.com/theseer/phpdox/pull/335): Make this compatible with PHPUnit 7.2
+
+
## phpDox 0.11.2 (22 May 2018)
Note: 0.11.x is the last series of releases that supports running under PHP 5.x
@@ -23,7 +40,7 @@
### Merged
* [#310](https://github.com/theseer/phpdox/pull/310): Make the build reproducible
-* [#319](https://github.com/theseer/phpdox/pull/319):Fixed: #315 count(): Parameter must be an array or an object that implements Countable
+* [#319](https://github.com/theseer/phpdox/pull/319): Fixed: #315 count(): Parameter must be an array or an object that implements Countable
### Fixed
* [#320](https://github.com/theseer/phpdox/issues/320): Multiline annotation for class constants fails to add subsequent lines
diff -Nru phpdox-0.11.2/composer.json phpdox-0.12.0/composer.json
--- phpdox-0.11.2/composer.json 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/composer.json 2019-03-13 09:34:17.000000000 +0000
@@ -13,7 +13,7 @@
"issues" : "https://github.com/theseer/phpdox/issues"
},
"require" : {
- "php" : ">=5.5",
+ "php" : ">=7.1",
"ext-tokenizer" : "*",
"ext-dom" : "*",
"ext-xsl" : "*",
@@ -23,8 +23,8 @@
"theseer/fdomdocument": "^1.6",
"theseer/directoryscanner" : "^1.3.0",
"theseer/fxsl" : "^1.1",
- "phpunit/php-timer" : "^1.0",
- "nikic/php-parser" : "^3.1"
+ "phpunit/php-timer" : "^2.0",
+ "nikic/php-parser" : "^4.2"
},
"autoload": {
"classmap": [
diff -Nru phpdox-0.11.2/composer.lock phpdox-0.12.0/composer.lock
--- phpdox-0.11.2/composer.lock 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/composer.lock 2019-03-13 09:34:17.000000000 +0000
@@ -1,31 +1,31 @@
{
"_readme": [
"This file locks the dependencies of your project to a known state",
- "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
+ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
- "content-hash": "f9634ce6203e7fde86726f70226969bf",
+ "content-hash": "aea8a10f3958526173e493c4a923e322",
"packages": [
{
"name": "nikic/php-parser",
- "version": "v3.1.3",
+ "version": "v4.2.1",
"source": {
"type": "git",
"url": "https://github.com/nikic/PHP-Parser.git",
- "reference": "579f4ce846734a1cf55d6a531d00ca07a43e3cda"
+ "reference": "5221f49a608808c1e4d436df32884cbc1b821ac0"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/579f4ce846734a1cf55d6a531d00ca07a43e3cda",
- "reference": "579f4ce846734a1cf55d6a531d00ca07a43e3cda",
+ "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/5221f49a608808c1e4d436df32884cbc1b821ac0",
+ "reference": "5221f49a608808c1e4d436df32884cbc1b821ac0",
"shasum": ""
},
"require": {
"ext-tokenizer": "*",
- "php": ">=5.5"
+ "php": ">=7.0"
},
"require-dev": {
- "phpunit/phpunit": "~4.0|~5.0"
+ "phpunit/phpunit": "^6.5 || ^7.0"
},
"bin": [
"bin/php-parse"
@@ -33,7 +33,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.0-dev"
+ "dev-master": "4.2-dev"
}
},
"autoload": {
@@ -55,32 +55,32 @@
"parser",
"php"
],
- "time": "2017-12-26T14:43:21+00:00"
+ "time": "2019-02-16T20:54:15+00:00"
},
{
"name": "phpunit/php-timer",
- "version": "1.0.9",
+ "version": "2.1.1",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-timer.git",
- "reference": "3dcf38ca72b158baf0bc245e9184d3fdffa9c46f"
+ "reference": "8b389aebe1b8b0578430bda0c7c95a829608e059"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/3dcf38ca72b158baf0bc245e9184d3fdffa9c46f",
- "reference": "3dcf38ca72b158baf0bc245e9184d3fdffa9c46f",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/8b389aebe1b8b0578430bda0c7c95a829608e059",
+ "reference": "8b389aebe1b8b0578430bda0c7c95a829608e059",
"shasum": ""
},
"require": {
- "php": "^5.3.3 || ^7.0"
+ "php": "^7.1"
},
"require-dev": {
- "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.0"
+ "phpunit/phpunit": "^7.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.0-dev"
+ "dev-master": "2.1-dev"
}
},
"autoload": {
@@ -95,7 +95,7 @@
"authors": [
{
"name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
+ "email": "sebastian@phpunit.de",
"role": "lead"
}
],
@@ -104,7 +104,7 @@
"keywords": [
"timer"
],
- "time": "2017-02-26T11:10:40+00:00"
+ "time": "2019-02-20T10:12:59+00:00"
},
{
"name": "theseer/directoryscanner",
@@ -241,7 +241,7 @@
"prefer-stable": true,
"prefer-lowest": false,
"platform": {
- "php": ">=5.5",
+ "php": ">=7.1",
"ext-tokenizer": "*",
"ext-dom": "*",
"ext-xsl": "*",
diff -Nru phpdox-0.11.2/debian/changelog phpdox-0.12.0/debian/changelog
--- phpdox-0.11.2/debian/changelog 2018-07-12 05:50:07.000000000 +0000
+++ phpdox-0.12.0/debian/changelog 2019-08-10 01:53:10.000000000 +0000
@@ -1,14 +1,34 @@
-phpdox (0.11.2-1build4) cosmic; urgency=medium
+phpdox (0.12.0-2) unstable; urgency=medium
- * Rebuild against new phpunit7 bootstrapped stack.
+ * Upload to unstable in sync with php-parser
+ * Use secure URI in debian/watch.
+ * Update standards version, no changes needed.
+ * Set upstream metadata fields: Contact, Name.
+ * Compatibility with recent PHPUnit (8)
+ * Use fonts-liberation instead of embedded font
+
+ -- David Prévot Fri, 09 Aug 2019 15:53:10 -1000
+
+phpdox (0.12.0-1) experimental; urgency=medium
+
+ Upload to experimental during the freeze
+
+ [ Arne Blankerts ]
+ * Bump copyright
+ * Bundle OFL Font "SourceSansPro", cleanup CSS
+ * Release 0.12.0
+
+ [ David Prévot ]
+ * More generic version handling
+ * Update copyright
+ * Drop get-orig-source target
+ * Use https in Format
+ * Use debhelper-compat 12
+ * Depend on recent php-parser
+ * Declare SOURCE_DATE_EPOCH as an integer
+ * Update Standards-Version to 4.3.0
- -- Gianfranco Costamagna Thu, 12 Jul 2018 07:50:07 +0200
-
-phpdox (0.11.2-1build3) cosmic; urgency=medium
-
- * Rebuild against new phpunit7 bootstrap.
-
- -- Gianfranco Costamagna Thu, 12 Jul 2018 00:01:37 +0200
+ -- David Prévot Sun, 17 Mar 2019 15:59:01 -1000
phpdox (0.11.2-1) unstable; urgency=medium
diff -Nru phpdox-0.11.2/debian/clean phpdox-0.12.0/debian/clean
--- phpdox-0.11.2/debian/clean 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/debian/clean 2019-08-10 01:53:10.000000000 +0000
@@ -0,0 +1 @@
+.phpunit.result.cache
diff -Nru phpdox-0.11.2/debian/compat phpdox-0.12.0/debian/compat
--- phpdox-0.11.2/debian/compat 2017-08-04 15:17:21.000000000 +0000
+++ phpdox-0.12.0/debian/compat 1970-01-01 00:00:00.000000000 +0000
@@ -1 +0,0 @@
-9
diff -Nru phpdox-0.11.2/debian/control phpdox-0.12.0/debian/control
--- phpdox-0.11.2/debian/control 2018-05-10 00:44:20.000000000 +0000
+++ phpdox-0.12.0/debian/control 2019-08-10 01:53:10.000000000 +0000
@@ -5,28 +5,28 @@
Uploaders: David Prévot ,
Prach Pongpanich
Build-Depends: ant,
- debhelper (>= 9),
+ debhelper-compat (= 12),
help2man,
php-codesniffer,
php-directory-scanner,
php-fdomdocument,
php-fxsl,
php-mbstring,
- php-parser,
+ php-parser (>= 4),
php-timer (>= 2),
phpcpd,
phploc,
phpmd,
phpunit,
pkg-php-tools (>= 1.29~)
-Standards-Version: 4.1.4
+Standards-Version: 4.4.0
Homepage: http://phpdox.de/
Vcs-Browser: https://salsa.debian.org/php-team/pear/phpdox
Vcs-Git: https://salsa.debian.org/php-team/pear/phpdox.git
Package: phpdox
Architecture: all
-Depends: ${misc:Depends}, ${phpcomposer:Debian-require}
+Depends: fonts-liberation, ${misc:Depends}, ${phpcomposer:Debian-require}
Suggests: ${phpcomposer:Debian-suggest}
Replaces: ${phpcomposer:Debian-replace}
Breaks: ${phpcomposer:Debian-conflict}, ${phpcomposer:Debian-replace}
diff -Nru phpdox-0.11.2/debian/copyright phpdox-0.12.0/debian/copyright
--- phpdox-0.11.2/debian/copyright 2018-05-10 00:43:52.000000000 +0000
+++ phpdox-0.12.0/debian/copyright 2019-08-10 01:53:10.000000000 +0000
@@ -1,10 +1,10 @@
-Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: phpDox
Upstream-Contact: Arne Blankerts
Source: https://github.com/theseer/phpdox
Files: *
-Copyright: 2009-2018, Arne Blankerts
+Copyright: 2009-2019, Arne Blankerts
Reiner Zufall
License: BSD-3-clause
@@ -12,6 +12,10 @@
Copyright: 2008, fCMS Development Team
License: fpl-1.1
+Files: templates/html/static/css/SourceSansPro-Regular.ttf
+Copyright: 2010, 2012 Adobe Systems Incorporated (http://www.adobe.com/)
+License: OFL-1.1
+
License: BSD-3-clause
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
@@ -93,3 +97,95 @@
the freepoint public license, please contact contact@fcms.de
.
Read more about this license at http://fcms.de/en/site/license/
+
+License: OFL-1.1
+ Copyright 2010, 2012 Adobe Systems Incorporated (http://www.adobe.com/),
+ with Reserved Font Name ‘Source’. All Rights Reserved. Source is
+ a trademark of Adobe Systems Incorporated in the United States and/or
+ other countries.
+ .
+ ––––––––––––––––––––––––––––––––––––––––––––––––––––
+ SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
+ ––––––––––––––––––––––––––––––––––––––––––––––––––––
+ .
+ PREAMBLE
+ The goals of the Open Font License (OFL) are to stimulate worldwide
+ development of collaborative font projects, to support the font
+ creation efforts of academic and linguistic communities, and to provide
+ a free and open framework in which fonts may be shared and improved in
+ partnership with others.
+ .
+ The OFL allows the licensed fonts to be used, studied, modified and
+ redistributed freely as long as they are not sold by themselves. The
+ fonts, including any derivative works, can be bundled, embedded,
+ redistributed and/or sold with any software provided that any reserved
+ names are not used by derivative works. The fonts and derivatives,
+ however, cannot be released under any other type of license. The
+ requirement for fonts to remain under this license does not apply to
+ any document created using the fonts or their derivatives.
+ .
+ DEFINITIONS
+ “Font Software” refers to the set of files released by the Copyright
+ Holder(s) under this license and clearly marked as such. This may
+ include source files, build scripts and documentation.
+ .
+ “Reserved Font Name” refers to any names specified as such after the
+ copyright statement(s).
+ .
+ “Original Version” refers to the collection of Font Software components
+ as distributed by the Copyright Holder(s).
+ .
+ “Modified Version” refers to any derivative made by adding to,
+ deleting, or substituting—in part or in whole—any of the components of
+ the Original Version, by changing formats or by porting the Font
+ Software to a new environment.
+ .
+ “Author” refers to any designer, engineer, programmer, technical writer
+ or other person who contributed to the Font Software.
+ .
+ PERMISSION & CONDITIONS
+ Permission is hereby granted, free of charge, to any person obtaining a
+ copy of the Font Software, to use, study, copy, merge, embed, modify,
+ redistribute, and sell modified and unmodified copies of the Font
+ Software, subject to the following conditions:
+ .
+ 1) Neither the Font Software nor any of its individual components, in
+ Original or Modified Versions, may be sold by itself.
+ .
+ 2) Original or Modified Versions of the Font Software may be bundled,
+ redistributed and/or sold with any software, provided that each copy
+ contains the above copyright notice and this license. These can be
+ included either as stand-alone text files, human-readable headers or in
+ the appropriate machine-readable metadata fields within text or binary
+ files as long as those fields can be easily viewed by the user.
+ .
+ 3) No Modified Version of the Font Software may use the Reserved Font
+ Name(s) unless explicit written permission is granted by the
+ corresponding Copyright Holder. This restriction only applies to the
+ primary font name as presented to the users.
+ .
+ 4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
+ Software shall not be used to promote, endorse or advertise any
+ Modified Version, except to acknowledge the contribution(s) of the
+ Copyright Holder(s) and the Author(s) or with their explicit written
+ permission.
+ .
+ 5) The Font Software, modified or unmodified, in part or in whole, must
+ be distributed entirely under this license, and must not be distributed
+ under any other license. The requirement for fonts to remain under this
+ license does not apply to any document created using the Font Software.
+ .
+ TERMINATION
+ This license becomes null and void if any of the above conditions are
+ not met.
+ .
+ DISCLAIMER
+ THE FONT SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND,
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
+ OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
+ COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+ INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
+ DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
+ OTHER DEALINGS IN THE FONT SOFTWARE.
diff -Nru phpdox-0.11.2/debian/links phpdox-0.12.0/debian/links
--- phpdox-0.11.2/debian/links 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/debian/links 2019-08-10 01:53:10.000000000 +0000
@@ -0,0 +1 @@
+usr/share/fonts/truetype/liberation/LiberationSans-Regular.ttf usr/share/php/TheSeer/phpDox/templates/html/static/css/SourceSansPro-Regular.ttf
diff -Nru phpdox-0.11.2/debian/patches/0001-Load-dependencies-from-autoload.php.patch phpdox-0.12.0/debian/patches/0001-Load-dependencies-from-autoload.php.patch
--- phpdox-0.11.2/debian/patches/0001-Load-dependencies-from-autoload.php.patch 2018-05-10 00:43:54.000000000 +0000
+++ phpdox-0.12.0/debian/patches/0001-Load-dependencies-from-autoload.php.patch 2019-08-10 01:53:10.000000000 +0000
@@ -8,7 +8,7 @@
1 file changed, 7 insertions(+)
diff --git a/src/autoload.php b/src/autoload.php
-index d559291..bd5fa82 100644
+index e547ffb..f88472b 100644
--- a/src/autoload.php
+++ b/src/autoload.php
@@ -1,4 +1,11 @@
@@ -17,8 +17,8 @@
+require_once 'TheSeer/fDOMDocument/autoload.php';
+require_once 'TheSeer/DirectoryScanner/autoload.php';
+require_once 'TheSeer/fXSL/autoload.php';
-+require_once 'PHP/Timer.php';
-+require_once 'PhpParser/bootstrap.php';
++require_once 'SebastianBergmann/Timer/autoload.php';
++require_once 'PhpParser/autoload.php';
+
// @codingStandardsIgnoreFile
// @codeCoverageIgnoreStart
diff -Nru phpdox-0.11.2/debian/patches/0002-Adapt-to-actual-autoload.php.patch phpdox-0.12.0/debian/patches/0002-Adapt-to-actual-autoload.php.patch
--- phpdox-0.11.2/debian/patches/0002-Adapt-to-actual-autoload.php.patch 2018-05-10 00:43:54.000000000 +0000
+++ phpdox-0.12.0/debian/patches/0002-Adapt-to-actual-autoload.php.patch 2019-08-10 01:53:10.000000000 +0000
@@ -8,7 +8,7 @@
1 file changed, 2 insertions(+), 19 deletions(-)
diff --git a/phpdox b/phpdox
-index 0e76af5..ba49b93 100755
+index 63a7b0c..b5694c6 100755
--- a/phpdox
+++ b/phpdox
@@ -1,4 +1,4 @@
@@ -16,7 +16,7 @@
+#!/usr/bin/php
+ * Copyright (c) 2010-2019 Arne Blankerts
@@ -40,24 +40,7 @@
*
*/
diff -Nru phpdox-0.11.2/debian/patches/0003-Adpapt-to-actual-templates-path.patch phpdox-0.12.0/debian/patches/0003-Adpapt-to-actual-templates-path.patch
--- phpdox-0.11.2/debian/patches/0003-Adpapt-to-actual-templates-path.patch 2018-05-10 00:43:54.000000000 +0000
+++ phpdox-0.12.0/debian/patches/0003-Adpapt-to-actual-templates-path.patch 2019-08-10 01:53:10.000000000 +0000
@@ -8,15 +8,15 @@
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/generator/engine/html/HtmlConfig.php b/src/generator/engine/html/HtmlConfig.php
-index 6c5cc7e..a368080 100644
+index efd0431..cb3cfce 100644
--- a/src/generator/engine/html/HtmlConfig.php
+++ b/src/generator/engine/html/HtmlConfig.php
-@@ -39,7 +39,7 @@ namespace TheSeer\phpDox\Generator\Engine {
- class HtmlConfig extends \TheSeer\phpDox\BuildConfig {
+@@ -3,7 +3,7 @@ namespace TheSeer\phpDox\Generator\Engine;
+
+ class HtmlConfig extends \TheSeer\phpDox\BuildConfig {
+ public function getTemplateDirectory() {
+- $default = $this->getGeneratorConfig()->getProjectConfig()->getHomeDirectory()->getPathname();
++ $default = '/usr/share/php/TheSeer/phpDox';
+ $default .= '/templates/html';
+ $node = $this->ctx->queryOne('cfg:template');
- public function getTemplateDirectory() {
-- $default = $this->getGeneratorConfig()->getProjectConfig()->getHomeDirectory()->getPathname();
-+ $default = '/usr/share/php/TheSeer/phpDox';
- $default .= '/templates/html';
- $node = $this->ctx->queryOne('cfg:template');
- if (!$node) {
diff -Nru phpdox-0.11.2/debian/patches/0004-Adapt-upstream-build-system-to-Debian-expectations.patch phpdox-0.12.0/debian/patches/0004-Adapt-upstream-build-system-to-Debian-expectations.patch
--- phpdox-0.11.2/debian/patches/0004-Adapt-upstream-build-system-to-Debian-expectations.patch 2018-05-10 00:43:54.000000000 +0000
+++ phpdox-0.12.0/debian/patches/0004-Adapt-upstream-build-system-to-Debian-expectations.patch 2019-08-10 01:53:10.000000000 +0000
@@ -5,11 +5,11 @@
Forwarded: not-needed
---
build.xml | 17 ++++++++++-------
- tests/bootstrap.php | 1 -
- 2 files changed, 10 insertions(+), 8 deletions(-)
+ tests/bootstrap.php | 2 --
+ 2 files changed, 10 insertions(+), 9 deletions(-)
diff --git a/build.xml b/build.xml
-index 1b2097a..c666daf 100644
+index 9fa1aa4..cb7ffc1 100644
--- a/build.xml
+++ b/build.xml
@@ -2,12 +2,15 @@
@@ -67,19 +67,20 @@
-@@ -151,5 +154,5 @@
+@@ -167,5 +170,5 @@
+
-
-
+
diff --git a/tests/bootstrap.php b/tests/bootstrap.php
-index d2587ef..6d8a24a 100644
+index a6e12e2..410e4b1 100644
--- a/tests/bootstrap.php
+++ b/tests/bootstrap.php
-@@ -37,4 +37,3 @@
- */
+@@ -1,5 +1,3 @@
+
+Date: Sun, 17 Mar 2019 17:13:47 -1000
+Subject: Declare SOURCE_DATE_EPOCH as an integer
+
+Forwarded: https://github.com/theseer/phpdox/pull/355
+---
+ src/shared/Version.php | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/shared/Version.php b/src/shared/Version.php
+index a5f0619..ca4deb1 100644
+--- a/src/shared/Version.php
++++ b/src/shared/Version.php
+@@ -29,7 +29,7 @@ class Version {
+ }
+
+ public function getInfoString() {
+- return 'phpDox ' . $this->getVersion() . ' - Copyright (C) 2010 - ' . \date('Y', \getenv('SOURCE_DATE_EPOCH') ?: \time()) . ' by Arne Blankerts and Contributors';
++ return 'phpDox ' . $this->getVersion() . ' - Copyright (C) 2010 - ' . \date('Y', (int)\getenv('SOURCE_DATE_EPOCH') ?: \time()) . ' by Arne Blankerts and Contributors';
+ }
+
+ public function getGeneratedByString() {
diff -Nru phpdox-0.11.2/debian/patches/0005-Use-php-timer-2.patch phpdox-0.12.0/debian/patches/0005-Use-php-timer-2.patch
--- phpdox-0.11.2/debian/patches/0005-Use-php-timer-2.patch 2018-05-10 00:43:54.000000000 +0000
+++ phpdox-0.12.0/debian/patches/0005-Use-php-timer-2.patch 1970-01-01 00:00:00.000000000 +0000
@@ -1,59 +0,0 @@
-From: =?utf-8?q?David_Pr=C3=A9vot?=
-Date: Thu, 8 Mar 2018 09:14:16 -1000
-Subject: Use php-timer (>= 2)
-
-Bug: https://github.com/theseer/phpdox/pull/326
----
- composer.json | 2 +-
- src/autoload.php | 2 +-
- src/logger/ShellProgressLogger.php | 4 +++-
- 3 files changed, 5 insertions(+), 3 deletions(-)
-
-diff --git a/composer.json b/composer.json
-index 512a198..a9f3973 100644
---- a/composer.json
-+++ b/composer.json
-@@ -23,7 +23,7 @@
- "theseer/fdomdocument": "^1.6",
- "theseer/directoryscanner" : "^1.3.0",
- "theseer/fxsl" : "^1.1",
-- "phpunit/php-timer" : "^1.0",
-+ "phpunit/php-timer" : "^2.0",
- "nikic/php-parser" : "^3.1"
- },
- "autoload": {
-diff --git a/src/autoload.php b/src/autoload.php
-index bd5fa82..4072c6a 100644
---- a/src/autoload.php
-+++ b/src/autoload.php
-@@ -3,7 +3,7 @@
- require_once 'TheSeer/fDOMDocument/autoload.php';
- require_once 'TheSeer/DirectoryScanner/autoload.php';
- require_once 'TheSeer/fXSL/autoload.php';
--require_once 'PHP/Timer.php';
-+require_once 'SebastianBergmann/Timer/autoload.php';
- require_once 'PhpParser/bootstrap.php';
-
- // @codingStandardsIgnoreFile
-diff --git a/src/logger/ShellProgressLogger.php b/src/logger/ShellProgressLogger.php
-index 1100e04..c771896 100644
---- a/src/logger/ShellProgressLogger.php
-+++ b/src/logger/ShellProgressLogger.php
-@@ -37,6 +37,8 @@
- */
- namespace TheSeer\phpDox {
-
-+use SebastianBergmann\Timer\Timer;
-+
- /**
- * Shell output based logger
- */
-@@ -128,7 +130,7 @@ namespace TheSeer\phpDox {
- */
- public function buildSummary() {
- echo "\n\n";
-- echo \PHP_Timer::resourceUsage();
-+ echo Timer::resourceUsage();
- echo "\n\n";
- }
-
diff -Nru phpdox-0.11.2/debian/patches/0006-Compatibility-with-recent-PHPUnit-8.patch phpdox-0.12.0/debian/patches/0006-Compatibility-with-recent-PHPUnit-8.patch
--- phpdox-0.11.2/debian/patches/0006-Compatibility-with-recent-PHPUnit-8.patch 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/debian/patches/0006-Compatibility-with-recent-PHPUnit-8.patch 2019-08-10 01:53:10.000000000 +0000
@@ -0,0 +1,35 @@
+From: =?utf-8?q?David_Pr=C3=A9vot?=
+Date: Fri, 9 Aug 2019 16:18:56 -1000
+Subject: Compatibility with recent PHPUnit (8)
+
+---
+ tests/Unit/DirectoryCleanerTest.php | 2 +-
+ tests/Unit/config/GlobalConfigTest.php | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/tests/Unit/DirectoryCleanerTest.php b/tests/Unit/DirectoryCleanerTest.php
+index 719ea47..1c96f60 100644
+--- a/tests/Unit/DirectoryCleanerTest.php
++++ b/tests/Unit/DirectoryCleanerTest.php
+@@ -13,7 +13,7 @@ class DirectoryCleanerTest extends \PHPUnit\Framework\TestCase {
+
+ /**
+ * @expectedException \TheSeer\phpDox\DirectoryCleanerException
+- * @expectedExceptionCode \TheSeer\phpDox\DirectoryCleanerException::SecurityLimitation
++ * @expectedException \TheSeer\phpDox\DirectoryCleanerException::SecurityLimitation
+ */
+ public function testTryingToDeleteAShortPathThrowsException(): void {
+ $this->cleaner->process(new FileInfo('/tmp'));
+diff --git a/tests/Unit/config/GlobalConfigTest.php b/tests/Unit/config/GlobalConfigTest.php
+index 2103449..a7d640b 100644
+--- a/tests/Unit/config/GlobalConfigTest.php
++++ b/tests/Unit/config/GlobalConfigTest.php
+@@ -42,7 +42,7 @@ class GlobalConfigTest extends \PHPUnit\Framework\TestCase {
+
+ /**
+ * @expectedException \TheSeer\phpDox\ConfigException
+- * @expectedExceptionCode \TheSeer\phpDox\ConfigException::InvalidDataStructure
++ * @expectedException \TheSeer\phpDox\ConfigException::InvalidDataStructure
+ */
+ public function testTryingToLoadInvalidConfigThrowsException(): void {
+ $this->init('broken');
diff -Nru phpdox-0.11.2/debian/patches/series phpdox-0.12.0/debian/patches/series
--- phpdox-0.11.2/debian/patches/series 2018-05-10 00:43:54.000000000 +0000
+++ phpdox-0.12.0/debian/patches/series 2019-08-10 01:53:10.000000000 +0000
@@ -2,4 +2,5 @@
0002-Adapt-to-actual-autoload.php.patch
0003-Adpapt-to-actual-templates-path.patch
0004-Adapt-upstream-build-system-to-Debian-expectations.patch
-0005-Use-php-timer-2.patch
+0005-Declare-SOURCE_DATE_EPOCH-as-an-integer.patch
+0006-Compatibility-with-recent-PHPUnit-8.patch
diff -Nru phpdox-0.11.2/debian/rules phpdox-0.12.0/debian/rules
--- phpdox-0.11.2/debian/rules 2018-01-23 08:17:07.000000000 +0000
+++ phpdox-0.12.0/debian/rules 2019-08-10 01:46:40.000000000 +0000
@@ -17,6 +17,3 @@
../../bin/phpdox \
> $(CURDIR)/debian/tmp/phpdox.1
dh_installman
-
-get-orig-source:
- uscan --rename --verbose --force
diff -Nru phpdox-0.11.2/debian/tests/control phpdox-0.12.0/debian/tests/control
--- phpdox-0.11.2/debian/tests/control 2017-08-04 15:17:21.000000000 +0000
+++ phpdox-0.12.0/debian/tests/control 2019-08-10 01:53:10.000000000 +0000
@@ -1,2 +1,2 @@
Test-Command: phpunit --bootstrap /usr/share/php/TheSeer/phpDox/autoload.php
-Depends: @, phpunit
+Depends: phpunit, @
diff -Nru phpdox-0.11.2/debian/upstream/metadata phpdox-0.12.0/debian/upstream/metadata
--- phpdox-0.11.2/debian/upstream/metadata 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/debian/upstream/metadata 2019-08-10 01:53:10.000000000 +0000
@@ -0,0 +1,2 @@
+Name: phpDox
+Contact: Arne Blankerts
diff -Nru phpdox-0.11.2/debian/watch phpdox-0.12.0/debian/watch
--- phpdox-0.11.2/debian/watch 2017-08-04 15:17:21.000000000 +0000
+++ phpdox-0.12.0/debian/watch 2019-08-10 01:53:10.000000000 +0000
@@ -1,5 +1,5 @@
version=3
# The PEAR package just embeds a PHAR
-# http://pear.netpirates.net/ http://pear.netpirates.net/get/phpDox-([\d\.]+).tgz
-options=uversionmangle=s/A/~alpha/i;s/B/~beta/i;s/RC/~rc/i \
+# https://pear.netpirates.net/ https://pear.netpirates.net/get/phpDox-([\d\.]+).tgz
+options=uversionmangle=s/-?([^\d.]+)/~$1/;tr/A-Z/a-z/;s/dev/~dev/ \
https://github.com/theseer/phpdox/releases .*/archive/(.*).tar.gz
diff -Nru phpdox-0.11.2/dependencies/php/classes/ArgumentCountError.xml phpdox-0.12.0/dependencies/php/classes/ArgumentCountError.xml
--- phpdox-0.11.2/dependencies/php/classes/ArgumentCountError.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/ArgumentCountError.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,86 @@
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/ArithmeticError.xml phpdox-0.12.0/dependencies/php/classes/ArithmeticError.xml
--- phpdox-0.11.2/dependencies/php/classes/ArithmeticError.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/ArithmeticError.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,6 +1,34 @@
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/ArrayIterator.xml phpdox-0.12.0/dependencies/php/classes/ArrayIterator.xml
--- phpdox-0.11.2/dependencies/php/classes/ArrayIterator.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/ArrayIterator.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,6 +1,16 @@
+
+
+
+
+
+
+
+
+
+
@@ -42,7 +52,7 @@
-
+
@@ -79,31 +89,31 @@
-
+
-
+
-
+
-
-
+
+
-
+
@@ -133,17 +143,17 @@
-
+ This method sorts the elements such that indices maintain their correlation with the values they are associated with, using a user-defined comparison function.
-
+
-
+ This method sorts the elements by keys using a user-supplied comparison function.
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/ArrayObject.xml phpdox-0.12.0/dependencies/php/classes/ArrayObject.xml
--- phpdox-0.11.2/dependencies/php/classes/ArrayObject.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/ArrayObject.xml 2019-03-13 09:34:17.000000000 +0000
@@ -41,20 +41,20 @@
-
+
-
+
-
+
@@ -66,7 +66,7 @@
-
+
@@ -125,14 +125,14 @@
-
+
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/AssertionError.xml phpdox-0.12.0/dependencies/php/classes/AssertionError.xml
--- phpdox-0.11.2/dependencies/php/classes/AssertionError.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/AssertionError.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,6 +1,34 @@
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/CachingIterator.xml phpdox-0.12.0/dependencies/php/classes/CachingIterator.xml
--- phpdox-0.11.2/dependencies/php/classes/CachingIterator.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CachingIterator.xml 2019-03-13 09:34:17.000000000 +0000
@@ -33,7 +33,7 @@
-
+
@@ -92,7 +92,7 @@
-
+
@@ -106,8 +106,8 @@
-
-
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/CairoContext.xml phpdox-0.12.0/dependencies/php/classes/CairoContext.xml
--- phpdox-0.11.2/dependencies/php/classes/CairoContext.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CairoContext.xml 2019-03-13 09:34:17.000000000 +0000
@@ -274,48 +274,48 @@
Object oriented style (method):
-
-
+
+
Object oriented style (method):
-
-
+
+
Object oriented style (method):
-
-
+
+
Object oriented style (method):
-
+
Object oriented style (method):
-
-
-
+
+
+
Object oriented style (method):
-
-
+
+
@@ -340,7 +340,7 @@
Object oriented style (method):
-
+
@@ -371,45 +371,45 @@
Object oriented style (method):
-
+
Object oriented style (method):
-
-
-
-
+
+
+
+
Object oriented style (method):
-
-
-
-
-
-
+
+
+
+
+
+
Object oriented style (method):
-
-
+
+
Object oriented style (method):
-
-
+
+
@@ -428,7 +428,7 @@
Object oriented style (method):
-
+
@@ -441,8 +441,8 @@
Object oriented style (method):
-
-
+
+
@@ -450,30 +450,30 @@
-
-
+
+
Object oriented style (method):
-
+
Object oriented style (method):
-
-
+
+
Object oriented style (method):
-
+
@@ -487,112 +487,112 @@
Object oriented style (method):
-
+
Object oriented style (method):
-
+
Object oriented style (method):
-
+
Object oriented style (method):
-
+
Object oriented style (method):
-
+
Object oriented style (method):
-
+
Object oriented style (method):
-
+
Object oriented style (method):
-
+
Object oriented style (method):
-
+
Object oriented style (method):
-
+
Object oriented style (method):
-
+
Object oriented style (method):
-
-
-
+
+
+
Object oriented style (method):
-
-
-
-
+
+
+
+
Object oriented style (method):
-
-
-
+
+
+
Object oriented style (method):
-
+
@@ -650,30 +650,30 @@
Object oriented style (method):
-
+
Object oriented style (method):
-
-
+
+
Object oriented style (method):
-
-
+
+
Object oriented style (method):
-
-
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/CairoFontFace.xml phpdox-0.12.0/dependencies/php/classes/CairoFontFace.xml
--- phpdox-0.11.2/dependencies/php/classes/CairoFontFace.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CairoFontFace.xml 2019-03-13 09:34:17.000000000 +0000
@@ -8,7 +8,7 @@
-
+ Object oriented style (method):
diff -Nru phpdox-0.11.2/dependencies/php/classes/CairoFontOptions.xml phpdox-0.12.0/dependencies/php/classes/CairoFontOptions.xml
--- phpdox-0.11.2/dependencies/php/classes/CairoFontOptions.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CairoFontOptions.xml 2019-03-13 09:34:17.000000000 +0000
@@ -11,7 +11,7 @@
-
+
@@ -48,35 +48,35 @@
-
+
Object oriented style (method):
-
+
-
+
-
+
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/CairoGradientPattern.xml phpdox-0.12.0/dependencies/php/classes/CairoGradientPattern.xml
--- phpdox-0.11.2/dependencies/php/classes/CairoGradientPattern.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CairoGradientPattern.xml 2019-03-13 09:34:17.000000000 +0000
@@ -6,21 +6,21 @@
-
-
-
-
+
+
+
+
-
-
-
-
-
+
+
+
+
+
@@ -33,7 +33,7 @@
-
+
@@ -71,7 +71,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/CairoImageSurface.xml phpdox-0.12.0/dependencies/php/classes/CairoImageSurface.xml
--- phpdox-0.11.2/dependencies/php/classes/CairoImageSurface.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CairoImageSurface.xml 2019-03-13 09:34:17.000000000 +0000
@@ -19,7 +19,6 @@
-
@@ -127,26 +126,26 @@
-
-
-
-
+
+
+
+
-
-
+
+
-
-
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/CairoLinearGradient.xml phpdox-0.12.0/dependencies/php/classes/CairoLinearGradient.xml
--- phpdox-0.11.2/dependencies/php/classes/CairoLinearGradient.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CairoLinearGradient.xml 2019-03-13 09:34:17.000000000 +0000
@@ -22,21 +22,21 @@
-
-
-
-
+
+
+
+
-
-
-
-
-
+
+
+
+
+
@@ -49,7 +49,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/CairoMatrix.xml phpdox-0.12.0/dependencies/php/classes/CairoMatrix.xml
--- phpdox-0.11.2/dependencies/php/classes/CairoMatrix.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CairoMatrix.xml 2019-03-13 09:34:17.000000000 +0000
@@ -60,8 +60,7 @@
Object oriented style (method):
-
-
+
@@ -76,23 +75,23 @@
-
-
+
+
-
-
+
+
Object oriented style (method):
-
-
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/CairoPattern.xml phpdox-0.12.0/dependencies/php/classes/CairoPattern.xml
--- phpdox-0.11.2/dependencies/php/classes/CairoPattern.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CairoPattern.xml 2019-03-13 09:34:17.000000000 +0000
@@ -23,7 +23,7 @@
Object oriented style (method):
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/CairoPdfSurface.xml phpdox-0.12.0/dependencies/php/classes/CairoPdfSurface.xml
--- phpdox-0.11.2/dependencies/php/classes/CairoPdfSurface.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CairoPdfSurface.xml 2019-03-13 09:34:17.000000000 +0000
@@ -15,8 +15,8 @@
-
-
+
+
@@ -87,26 +87,26 @@
-
-
-
-
+
+
+
+
-
-
+
+
-
-
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/CairoPsSurface.xml phpdox-0.12.0/dependencies/php/classes/CairoPsSurface.xml
--- phpdox-0.11.2/dependencies/php/classes/CairoPsSurface.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CairoPsSurface.xml 2019-03-13 09:34:17.000000000 +0000
@@ -53,22 +53,22 @@
-
+
-
+
-
-
+
+
@@ -139,26 +139,26 @@
-
-
-
-
+
+
+
+
-
-
+
+
-
-
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/CairoRadialGradient.xml phpdox-0.12.0/dependencies/php/classes/CairoRadialGradient.xml
--- phpdox-0.11.2/dependencies/php/classes/CairoRadialGradient.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CairoRadialGradient.xml 2019-03-13 09:34:17.000000000 +0000
@@ -24,21 +24,21 @@
-
-
-
-
+
+
+
+
-
-
-
-
-
+
+
+
+
+
@@ -51,7 +51,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/CairoScaledFont.xml phpdox-0.12.0/dependencies/php/classes/CairoScaledFont.xml
--- phpdox-0.11.2/dependencies/php/classes/CairoScaledFont.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CairoScaledFont.xml 2019-03-13 09:34:17.000000000 +0000
@@ -57,7 +57,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/CairoSolidPattern.xml phpdox-0.12.0/dependencies/php/classes/CairoSolidPattern.xml
--- phpdox-0.11.2/dependencies/php/classes/CairoSolidPattern.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CairoSolidPattern.xml 2019-03-13 09:34:17.000000000 +0000
@@ -40,7 +40,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/CairoSurfacePattern.xml phpdox-0.12.0/dependencies/php/classes/CairoSurfacePattern.xml
--- phpdox-0.11.2/dependencies/php/classes/CairoSurfacePattern.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CairoSurfacePattern.xml 2019-03-13 09:34:17.000000000 +0000
@@ -38,7 +38,7 @@
-
+
@@ -63,7 +63,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/CairoSurface.xml phpdox-0.12.0/dependencies/php/classes/CairoSurface.xml
--- phpdox-0.11.2/dependencies/php/classes/CairoSurface.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CairoSurface.xml 2019-03-13 09:34:17.000000000 +0000
@@ -69,26 +69,26 @@
-
-
-
-
+
+
+
+
-
-
+
+
-
-
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/CairoSvgSurface.xml phpdox-0.12.0/dependencies/php/classes/CairoSvgSurface.xml
--- phpdox-0.11.2/dependencies/php/classes/CairoSvgSurface.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CairoSvgSurface.xml 2019-03-13 09:34:17.000000000 +0000
@@ -21,7 +21,7 @@
-
+
@@ -99,26 +99,26 @@
-
-
-
-
+
+
+
+
-
-
+
+
-
-
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/CallbackFilterIterator.xml phpdox-0.12.0/dependencies/php/classes/CallbackFilterIterator.xml
--- phpdox-0.11.2/dependencies/php/classes/CallbackFilterIterator.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CallbackFilterIterator.xml 2019-03-13 09:34:17.000000000 +0000
@@ -12,7 +12,7 @@
This method calls the callback with the current value, current key and the inner iterator.
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/Closure.xml phpdox-0.12.0/dependencies/php/classes/Closure.xml
--- phpdox-0.11.2/dependencies/php/classes/Closure.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Closure.xml 2019-03-13 09:34:17.000000000 +0000
@@ -33,7 +33,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/CommonMark_CQL.xml phpdox-0.12.0/dependencies/php/classes/CommonMark_CQL.xml
--- phpdox-0.11.2/dependencies/php/classes/CommonMark_CQL.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CommonMark_CQL.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,18 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/CommonMark_Interfaces_IVisitor.xml phpdox-0.12.0/dependencies/php/classes/CommonMark_Interfaces_IVisitor.xml
--- phpdox-0.11.2/dependencies/php/classes/CommonMark_Interfaces_IVisitor.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CommonMark_Interfaces_IVisitor.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,32 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_BlockQuote.xml phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_BlockQuote.xml
--- phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_BlockQuote.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_BlockQuote.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,106 @@
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_BulletList.xml phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_BulletList.xml
--- phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_BulletList.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_BulletList.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,139 @@
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_CodeBlock.xml phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_CodeBlock.xml
--- phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_CodeBlock.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_CodeBlock.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,139 @@
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_Code.xml phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_Code.xml
--- phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_Code.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_Code.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,125 @@
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_CustomBlock.xml phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_CustomBlock.xml
--- phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_CustomBlock.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_CustomBlock.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,118 @@
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_CustomInline.xml phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_CustomInline.xml
--- phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_CustomInline.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_CustomInline.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,118 @@
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_Document.xml phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_Document.xml
--- phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_Document.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_Document.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,106 @@
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_Heading.xml phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_Heading.xml
--- phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_Heading.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_Heading.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,125 @@
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_HTMLBlock.xml phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_HTMLBlock.xml
--- phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_HTMLBlock.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_HTMLBlock.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,125 @@
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_HTMLInline.xml phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_HTMLInline.xml
--- phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_HTMLInline.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_HTMLInline.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,125 @@
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_Image.xml phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_Image.xml
--- phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_Image.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_Image.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,139 @@
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_Item.xml phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_Item.xml
--- phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_Item.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_Item.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,106 @@
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_LineBreak.xml phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_LineBreak.xml
--- phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_LineBreak.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_LineBreak.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,106 @@
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_Link.xml phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_Link.xml
--- phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_Link.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_Link.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,139 @@
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_OrderedList.xml phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_OrderedList.xml
--- phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_OrderedList.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_OrderedList.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,154 @@
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_Paragraph.xml phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_Paragraph.xml
--- phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_Paragraph.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_Paragraph.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,106 @@
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_SoftBreak.xml phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_SoftBreak.xml
--- phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_SoftBreak.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_SoftBreak.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,106 @@
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_Text_Emphasis.xml phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_Text_Emphasis.xml
--- phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_Text_Emphasis.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_Text_Emphasis.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,106 @@
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_Text_Strong.xml phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_Text_Strong.xml
--- phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_Text_Strong.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_Text_Strong.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,106 @@
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_Text.xml phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_Text.xml
--- phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_Text.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_Text.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,125 @@
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_ThematicBreak.xml phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_ThematicBreak.xml
--- phpdox-0.11.2/dependencies/php/classes/CommonMark_Node_ThematicBreak.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CommonMark_Node_ThematicBreak.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,106 @@
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/CommonMark_Node.xml phpdox-0.12.0/dependencies/php/classes/CommonMark_Node.xml
--- phpdox-0.11.2/dependencies/php/classes/CommonMark_Node.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CommonMark_Node.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,106 @@
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/CommonMark_Parser.xml phpdox-0.12.0/dependencies/php/classes/CommonMark_Parser.xml
--- phpdox-0.11.2/dependencies/php/classes/CommonMark_Parser.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CommonMark_Parser.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,23 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/CompileError.xml phpdox-0.12.0/dependencies/php/classes/CompileError.xml
--- phpdox-0.11.2/dependencies/php/classes/CompileError.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/CompileError.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,86 @@
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Componere_Abstract_Definition.xml phpdox-0.12.0/dependencies/php/classes/Componere_Abstract_Definition.xml
--- phpdox-0.11.2/dependencies/php/classes/Componere_Abstract_Definition.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Componere_Abstract_Definition.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,31 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Componere_Definition.xml phpdox-0.12.0/dependencies/php/classes/Componere_Definition.xml
--- phpdox-0.11.2/dependencies/php/classes/Componere_Definition.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Componere_Definition.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Componere_Method.xml phpdox-0.12.0/dependencies/php/classes/Componere_Method.xml
--- phpdox-0.11.2/dependencies/php/classes/Componere_Method.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Componere_Method.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Componere_Patch.xml phpdox-0.12.0/dependencies/php/classes/Componere_Patch.xml
--- phpdox-0.11.2/dependencies/php/classes/Componere_Patch.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Componere_Patch.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Componere_Value.xml phpdox-0.12.0/dependencies/php/classes/Componere_Value.xml
--- phpdox-0.11.2/dependencies/php/classes/Componere_Value.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Componere_Value.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,52 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Cond.xml phpdox-0.12.0/dependencies/php/classes/Cond.xml
--- phpdox-0.11.2/dependencies/php/classes/Cond.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Cond.xml 2019-03-13 09:34:17.000000000 +0000
@@ -3,37 +3,37 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
-
-
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Counter.xml phpdox-0.12.0/dependencies/php/classes/Counter.xml
--- phpdox-0.11.2/dependencies/php/classes/Counter.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Counter.xml 2019-03-13 09:34:17.000000000 +0000
@@ -2,49 +2,49 @@
-
+
-
-
+
+
-
-
+
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/DatePeriod.xml phpdox-0.12.0/dependencies/php/classes/DatePeriod.xml
--- phpdox-0.11.2/dependencies/php/classes/DatePeriod.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/DatePeriod.xml 2019-03-13 09:34:17.000000000 +0000
@@ -6,6 +6,48 @@
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/DateTimeImmutable.xml phpdox-0.12.0/dependencies/php/classes/DateTimeImmutable.xml
--- phpdox-0.11.2/dependencies/php/classes/DateTimeImmutable.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/DateTimeImmutable.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,6 +1,66 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Object oriented style
@@ -78,10 +138,11 @@
+
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/DateTime.xml phpdox-0.12.0/dependencies/php/classes/DateTime.xml
--- phpdox-0.11.2/dependencies/php/classes/DateTime.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/DateTime.xml 2019-03-13 09:34:17.000000000 +0000
@@ -46,6 +46,11 @@
+
+
+
+
+
@@ -126,6 +131,7 @@
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/DirectoryIterator.xml phpdox-0.12.0/dependencies/php/classes/DirectoryIterator.xml
--- phpdox-0.11.2/dependencies/php/classes/DirectoryIterator.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/DirectoryIterator.xml 2019-03-13 09:34:17.000000000 +0000
@@ -10,7 +10,7 @@
-
+
@@ -22,7 +22,7 @@
-
+
@@ -41,7 +41,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/DivisionByZeroError.xml phpdox-0.12.0/dependencies/php/classes/DivisionByZeroError.xml
--- phpdox-0.11.2/dependencies/php/classes/DivisionByZeroError.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/DivisionByZeroError.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,6 +1,34 @@
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/DOMAttr.xml phpdox-0.12.0/dependencies/php/classes/DOMAttr.xml
--- phpdox-0.11.2/dependencies/php/classes/DOMAttr.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/DOMAttr.xml 2019-03-13 09:34:17.000000000 +0000
@@ -36,6 +36,118 @@
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
@@ -139,7 +251,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/DOMCdataSection.xml phpdox-0.12.0/dependencies/php/classes/DOMCdataSection.xml
--- phpdox-0.11.2/dependencies/php/classes/DOMCdataSection.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/DOMCdataSection.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,6 +1,139 @@
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
@@ -8,6 +141,12 @@
+
+
+
+
+
+
@@ -21,4 +160,168 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/DOMCharacterData.xml phpdox-0.12.0/dependencies/php/classes/DOMCharacterData.xml
--- phpdox-0.11.2/dependencies/php/classes/DOMCharacterData.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/DOMCharacterData.xml 2019-03-13 09:34:17.000000000 +0000
@@ -15,14 +15,126 @@
-
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
-
+
@@ -30,7 +142,7 @@
-
+
@@ -38,7 +150,7 @@
-
+
@@ -47,7 +159,7 @@
-
+
@@ -144,7 +256,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/DOMComment.xml phpdox-0.12.0/dependencies/php/classes/DOMComment.xml
--- phpdox-0.11.2/dependencies/php/classes/DOMComment.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/DOMComment.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,6 +1,132 @@
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
@@ -8,14 +134,14 @@
-
+
-
+
@@ -23,7 +149,7 @@
-
+
@@ -31,7 +157,7 @@
-
+
@@ -40,7 +166,7 @@
-
+
@@ -137,7 +263,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/DOMDocumentFragment.xml phpdox-0.12.0/dependencies/php/classes/DOMDocumentFragment.xml
--- phpdox-0.11.2/dependencies/php/classes/DOMDocumentFragment.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/DOMDocumentFragment.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,6 +1,118 @@
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
Appends raw XML data to a DOMDocumentFragment.
@@ -97,7 +209,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/DOMDocumentType.xml phpdox-0.12.0/dependencies/php/classes/DOMDocumentType.xml
--- phpdox-0.11.2/dependencies/php/classes/DOMDocumentType.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/DOMDocumentType.xml 2019-03-13 09:34:17.000000000 +0000
@@ -43,6 +43,118 @@
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
@@ -132,7 +244,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/DOMDocument.xml phpdox-0.12.0/dependencies/php/classes/DOMDocument.xml
--- phpdox-0.11.2/dependencies/php/classes/DOMDocument.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/DOMDocument.xml 2019-03-13 09:34:17.000000000 +0000
@@ -134,6 +134,118 @@
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
@@ -454,7 +566,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/DOMElement.xml phpdox-0.12.0/dependencies/php/classes/DOMElement.xml
--- phpdox-0.11.2/dependencies/php/classes/DOMElement.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/DOMElement.xml 2019-03-13 09:34:17.000000000 +0000
@@ -15,6 +15,118 @@
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
@@ -251,7 +363,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/DOMEntityReference.xml phpdox-0.12.0/dependencies/php/classes/DOMEntityReference.xml
--- phpdox-0.11.2/dependencies/php/classes/DOMEntityReference.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/DOMEntityReference.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,6 +1,118 @@
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
@@ -97,7 +209,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/DOMEntity.xml phpdox-0.12.0/dependencies/php/classes/DOMEntity.xml
--- phpdox-0.11.2/dependencies/php/classes/DOMEntity.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/DOMEntity.xml 2019-03-13 09:34:17.000000000 +0000
@@ -43,6 +43,118 @@
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
@@ -132,7 +244,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/DOMException.xml phpdox-0.12.0/dependencies/php/classes/DOMException.xml
--- phpdox-0.11.2/dependencies/php/classes/DOMException.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/DOMException.xml 2019-03-13 09:34:17.000000000 +0000
@@ -8,6 +8,34 @@
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/DOMNamedNodeMap.xml phpdox-0.12.0/dependencies/php/classes/DOMNamedNodeMap.xml
--- phpdox-0.11.2/dependencies/php/classes/DOMNamedNodeMap.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/DOMNamedNodeMap.xml 2019-03-13 09:34:17.000000000 +0000
@@ -8,6 +8,12 @@
+
+
+
+
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/DOMNodeList.xml phpdox-0.12.0/dependencies/php/classes/DOMNodeList.xml
--- phpdox-0.11.2/dependencies/php/classes/DOMNodeList.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/DOMNodeList.xml 2019-03-13 09:34:17.000000000 +0000
@@ -8,10 +8,16 @@
+
+
+
+
+
+
Retrieves a node specified by index within the DOMNodeList object.
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/DOMNode.xml phpdox-0.12.0/dependencies/php/classes/DOMNode.xml
--- phpdox-0.11.2/dependencies/php/classes/DOMNode.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/DOMNode.xml 2019-03-13 09:34:17.000000000 +0000
@@ -201,7 +201,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/DOMNotation.xml phpdox-0.12.0/dependencies/php/classes/DOMNotation.xml
--- phpdox-0.11.2/dependencies/php/classes/DOMNotation.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/DOMNotation.xml 2019-03-13 09:34:17.000000000 +0000
@@ -15,6 +15,118 @@
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
@@ -104,7 +216,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/DOMProcessingInstruction.xml phpdox-0.12.0/dependencies/php/classes/DOMProcessingInstruction.xml
--- phpdox-0.11.2/dependencies/php/classes/DOMProcessingInstruction.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/DOMProcessingInstruction.xml 2019-03-13 09:34:17.000000000 +0000
@@ -15,6 +15,118 @@
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
@@ -112,7 +224,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/DOMText.xml phpdox-0.12.0/dependencies/php/classes/DOMText.xml
--- phpdox-0.11.2/dependencies/php/classes/DOMText.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/DOMText.xml 2019-03-13 09:34:17.000000000 +0000
@@ -8,6 +8,132 @@
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
@@ -15,6 +141,12 @@
+
+
+
+
+
+
@@ -28,6 +160,46 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -117,7 +289,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/Ds_Deque.xml phpdox-0.12.0/dependencies/php/classes/Ds_Deque.xml
--- phpdox-0.11.2/dependencies/php/classes/Ds_Deque.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Ds_Deque.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
@@ -8,73 +8,73 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
@@ -88,47 +88,47 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
+
@@ -136,33 +136,33 @@
-
+
-
+
-
+
-
+
-
+
@@ -170,13 +170,13 @@
-
+
-
+
@@ -184,33 +184,33 @@
-
+
-
+
- Returns the sum of all values in the deque.
+ Returns the sum of all values in the deque.
- Converts the deque to an array.
+ Converts the deque to an array.
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/Ds_Map.xml phpdox-0.12.0/dependencies/php/classes/Ds_Map.xml
--- phpdox-0.11.2/dependencies/php/classes/Ds_Map.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Ds_Map.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
@@ -8,59 +8,59 @@
-
+
-
+
-
+
-
+
-
+
- Returns the result of removing all keys from the current instance that are present in a given map.
+ Returns the result of removing all keys from the current instance that are present in a given map.
-
+
-
+
- Returns the value for a given key, or an optional default value if the key could not be found.
+ Returns the value for a given key, or an optional default value if the key could not be found.
@@ -68,21 +68,21 @@
-
+
-
+
- Creates a new map containing the pairs of the current instance whose keys are also present in the given map. In other words, returns a copy of the current instance with all keys removed that are not also in the other map.
+ Creates a new map containing the pairs of the current instance whose keys are also present in the given map. In other words, returns a copy of the current instance with all keys removed that are not also in the other map.
@@ -95,53 +95,53 @@
-
+
-
+
-
+
-
+
-
+
- Returns the result of associating all keys of a given traversable object or array with their corresponding values, combined with the current instance.
+ Returns the result of associating all keys of a given traversable object or array with their corresponding values, combined with the current instance.
-
+
- Associates a key with a value, overwriting a previous association if one exists.
+ Associates a key with a value, overwriting a previous association if one exists.
@@ -149,14 +149,14 @@
- Associates all key-value pairs of a traversable object or array.
+ Associates all key-value pairs of a traversable object or array.
-
+
@@ -164,7 +164,7 @@
- Removes and returns a value by key, or return an optional default value if the key could not be found.
+ Removes and returns a value by key, or return an optional default value if the key could not be found.
@@ -172,26 +172,26 @@
-
+
-
+
-
+
-
+
@@ -199,46 +199,46 @@
-
+
-
+
- Returns the sum of all values in the map.
+ Returns the sum of all values in the map.
- Converts the map to an array.
+ Converts the map to an array.
- Creates a new map that contains the pairs of the current instance as well as the pairs of another map.
+ Creates a new map that contains the pairs of the current instance as well as the pairs of another map.
-
+
- Creates a new map containing keys of the current instance as well as another map, but not of both.
+ Creates a new map containing keys of the current instance as well as another map, but not of both.
diff -Nru phpdox-0.11.2/dependencies/php/classes/Ds_Pair.xml phpdox-0.12.0/dependencies/php/classes/Ds_Pair.xml
--- phpdox-0.11.2/dependencies/php/classes/Ds_Pair.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Ds_Pair.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,12 +1,36 @@
-
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Converts the pair to an array.
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Ds_PriorityQueue.xml phpdox-0.12.0/dependencies/php/classes/Ds_PriorityQueue.xml
--- phpdox-0.11.2/dependencies/php/classes/Ds_PriorityQueue.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Ds_PriorityQueue.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
@@ -8,26 +8,26 @@
-
+
-
+
-
+
-
+
@@ -39,19 +39,19 @@
-
+
- Removes and returns the value at the front of the queue, ie. the value with the highest priority.
+ Removes and returns the value at the front of the queue, ie. the value with the highest priority.
-
+
@@ -59,7 +59,7 @@
- Converts the queue to an array.
+ Converts the queue to an array.
diff -Nru phpdox-0.11.2/dependencies/php/classes/Ds_Queue.xml phpdox-0.12.0/dependencies/php/classes/Ds_Queue.xml
--- phpdox-0.11.2/dependencies/php/classes/Ds_Queue.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Ds_Queue.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
@@ -8,26 +8,26 @@
- Ensures that enough memory is allocated for a required capacity. This removes the need to reallocate the internal as values are added.
+ Ensures that enough memory is allocated for a required capacity. This removes the need to reallocate the internal as values are added.
-
+
-
+
-
+
@@ -39,26 +39,26 @@
-
+
-
+
-
+
- Converts the queue to an array.
+ Converts the queue to an array.
diff -Nru phpdox-0.11.2/dependencies/php/classes/Ds_Set.xml phpdox-0.12.0/dependencies/php/classes/Ds_Set.xml
--- phpdox-0.11.2/dependencies/php/classes/Ds_Set.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Ds_Set.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
@@ -8,73 +8,73 @@
- Adds all given values to the set that haven't already been added.
+ Adds all given values to the set that haven't already been added.
-
+
-
+
-
+
- Determines if the set contains all values.
+ Determines if the set contains all values.
-
+
- Creates a new set using values that aren't in another set.
+ Creates a new set using values that aren't in another set.
-
+
-
+
-
+
- Creates a new set using values common to both the current instance and another set. In other words, returns a copy of the current instance with all values removed that are not in the other set.
+ Creates a new set using values common to both the current instance and another set. In other words, returns a copy of the current instance with all values removed that are not in the other set.
@@ -87,27 +87,27 @@
-
+
-
+
-
+
-
+
@@ -115,26 +115,26 @@
-
+
-
+
-
+
-
+
@@ -142,40 +142,40 @@
-
+
-
+
- Returns the sum of all values in the set.
+ Returns the sum of all values in the set.
- Converts the set to an array.
+ Converts the set to an array.
- Creates a new set that contains the values of the current instance as well as the values of another set.
+ Creates a new set that contains the values of the current instance as well as the values of another set.
- Creates a new set containing values in the current instance as well as another set, but not in both.
+ Creates a new set containing values in the current instance as well as another set, but not in both.
diff -Nru phpdox-0.11.2/dependencies/php/classes/Ds_Stack.xml phpdox-0.12.0/dependencies/php/classes/Ds_Stack.xml
--- phpdox-0.11.2/dependencies/php/classes/Ds_Stack.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Ds_Stack.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,28 +1,28 @@
-
+
-
+
-
+
-
+
-
+
@@ -34,26 +34,26 @@
-
+
-
+
-
+
- Converts the stack to an array.
+ Converts the stack to an array.
diff -Nru phpdox-0.11.2/dependencies/php/classes/Ds_Vector.xml phpdox-0.12.0/dependencies/php/classes/Ds_Vector.xml
--- phpdox-0.11.2/dependencies/php/classes/Ds_Vector.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Ds_Vector.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
@@ -8,73 +8,73 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
@@ -88,47 +88,47 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
+
@@ -136,33 +136,33 @@
-
+
-
+
-
+
-
+
-
+
@@ -170,13 +170,13 @@
-
+
-
+
@@ -184,33 +184,33 @@
-
+
-
+
- Returns the sum of all values in the vector.
+ Returns the sum of all values in the vector.
- Converts the vector to an array.
+ Converts the vector to an array.
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/EvEmbed.xml phpdox-0.12.0/dependencies/php/classes/EvEmbed.xml
--- phpdox-0.11.2/dependencies/php/classes/EvEmbed.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/EvEmbed.xml 2019-03-13 09:34:17.000000000 +0000
@@ -36,7 +36,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/EventBase.xml phpdox-0.12.0/dependencies/php/classes/EventBase.xml
--- phpdox-0.11.2/dependencies/php/classes/EventBase.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/EventBase.xml 2019-03-13 09:34:17.000000000 +0000
@@ -48,7 +48,7 @@
-
+
@@ -71,7 +71,7 @@
-
+
@@ -102,7 +102,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/EventBufferEvent.xml phpdox-0.12.0/dependencies/php/classes/EventBufferEvent.xml
--- phpdox-0.11.2/dependencies/php/classes/EventBufferEvent.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/EventBufferEvent.xml 2019-03-13 09:34:17.000000000 +0000
@@ -138,14 +138,14 @@
-
+
-
+
@@ -247,31 +247,31 @@
- Retrieves description of the current cipher by means of the SSL_CIPHER_description SSL API function (see SSL_CIPHER_get_name(3) man page).
+ Retrieves description of the current cipher by means of the SSL_CIPHER_description SSL API function (see SSL_CIPHER_get_name(3) man page).
- Retrieves name of cipher used by current SSL connection.
+ Retrieves name of cipher used by current SSL connection.
- Retrieves version of cipher used by current SSL connection.
+ Retrieves version of cipher used by current SSL connection.
- Returns the name of the protocol used for current SSL connection.
+ Returns the name of the protocol used for current SSL connection.
- Tells a bufferevent to begin SSL renegotiation.
+ Tells a bufferevent to begin SSL renegotiation.
diff -Nru phpdox-0.11.2/dependencies/php/classes/EventListener.xml phpdox-0.12.0/dependencies/php/classes/EventListener.xml
--- phpdox-0.11.2/dependencies/php/classes/EventListener.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/EventListener.xml 2019-03-13 09:34:17.000000000 +0000
@@ -64,7 +64,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/EventUtil.xml phpdox-0.12.0/dependencies/php/classes/EventUtil.xml
--- phpdox-0.11.2/dependencies/php/classes/EventUtil.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/EventUtil.xml 2019-03-13 09:34:17.000000000 +0000
@@ -149,7 +149,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/Event.xml phpdox-0.12.0/dependencies/php/classes/Event.xml
--- phpdox-0.11.2/dependencies/php/classes/Event.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Event.xml 2019-03-13 09:34:17.000000000 +0000
@@ -42,21 +42,21 @@
Marks event pending. Non-pending event will never occur, and the event callback will never be called. In conjuction with Event::del an event could be re-scheduled by user at any time.
-
+
-
+
-
+
@@ -89,7 +89,7 @@
- Removes event from the list of events monitored by libevent, and free resources allocated for the event.
+ Removes event from the list of events monitored by libevent, and free resources allocated for the event.
diff -Nru phpdox-0.11.2/dependencies/php/classes/EvLoop.xml phpdox-0.12.0/dependencies/php/classes/EvLoop.xml
--- phpdox-0.11.2/dependencies/php/classes/EvLoop.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/EvLoop.xml 2019-03-13 09:34:17.000000000 +0000
@@ -50,7 +50,7 @@
-
+
@@ -81,22 +81,22 @@
-
-
+
+
-
+
-
-
+
+
-
+
@@ -148,12 +148,12 @@
-
+
-
+
@@ -162,8 +162,8 @@
-
-
+
+
@@ -206,7 +206,7 @@
-
+
@@ -229,8 +229,8 @@
-
-
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/EvPeriodic.xml phpdox-0.12.0/dependencies/php/classes/EvPeriodic.xml
--- phpdox-0.11.2/dependencies/php/classes/EvPeriodic.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/EvPeriodic.xml 2019-03-13 09:34:17.000000000 +0000
@@ -39,14 +39,14 @@
-
+
-
+
@@ -54,7 +54,7 @@
-
+
@@ -66,8 +66,8 @@
-
-
+
+
@@ -78,8 +78,8 @@
-
-
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/EvSignal.xml phpdox-0.12.0/dependencies/php/classes/EvSignal.xml
--- phpdox-0.11.2/dependencies/php/classes/EvSignal.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/EvSignal.xml 2019-03-13 09:34:17.000000000 +0000
@@ -33,7 +33,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/EvStat.xml phpdox-0.12.0/dependencies/php/classes/EvStat.xml
--- phpdox-0.11.2/dependencies/php/classes/EvStat.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/EvStat.xml 2019-03-13 09:34:17.000000000 +0000
@@ -49,7 +49,7 @@
-
+
@@ -60,7 +60,7 @@
-
+
@@ -77,7 +77,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/EvTimer.xml phpdox-0.12.0/dependencies/php/classes/EvTimer.xml
--- phpdox-0.11.2/dependencies/php/classes/EvTimer.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/EvTimer.xml 2019-03-13 09:34:17.000000000 +0000
@@ -48,8 +48,8 @@
-
-
+
+
@@ -59,8 +59,8 @@
-
-
+
+
@@ -70,8 +70,8 @@
-
-
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/Ev.xml phpdox-0.12.0/dependencies/php/classes/Ev.xml
--- phpdox-0.11.2/dependencies/php/classes/Ev.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Ev.xml 2019-03-13 09:34:17.000000000 +0000
@@ -172,7 +172,7 @@
-
+
@@ -184,7 +184,7 @@
-
+
@@ -204,25 +204,25 @@
-
+
-
-
+
+
- Establishes the current time by querying the kernel, updating the time returned by Ev::now in the progress. This is a costly operation and is usually done automatically within Ev::run .
+ Establishes the current time by querying the kernel, updating the time returned by Ev::now in the progress. This is a costly operation and is usually done automatically within Ev::run .
-
+
@@ -241,10 +241,10 @@
-
+
-
+
@@ -255,7 +255,7 @@
-
+
@@ -267,8 +267,8 @@
-
-
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/FANNConnection.xml phpdox-0.12.0/dependencies/php/classes/FANNConnection.xml
--- phpdox-0.11.2/dependencies/php/classes/FANNConnection.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/FANNConnection.xml 2019-03-13 09:34:17.000000000 +0000
@@ -29,7 +29,7 @@
-
+
@@ -48,7 +48,7 @@
Sets the connection weight.
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/GearmanClient.xml phpdox-0.12.0/dependencies/php/classes/GearmanClient.xml
--- phpdox-0.11.2/dependencies/php/classes/GearmanClient.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/GearmanClient.xml 2019-03-13 09:34:17.000000000 +0000
@@ -204,7 +204,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/GearmanWorker.xml phpdox-0.12.0/dependencies/php/classes/GearmanWorker.xml
--- phpdox-0.11.2/dependencies/php/classes/GearmanWorker.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/GearmanWorker.xml 2019-03-13 09:34:17.000000000 +0000
@@ -92,7 +92,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/Gender_Gender.xml phpdox-0.12.0/dependencies/php/classes/Gender_Gender.xml
--- phpdox-0.11.2/dependencies/php/classes/Gender_Gender.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Gender_Gender.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
@@ -312,14 +312,14 @@
-
-
+
+
-
+
@@ -329,31 +329,31 @@
-
+
-
-
+
+
-
+
-
+
-
+
-
+
-
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/GlobIterator.xml phpdox-0.12.0/dependencies/php/classes/GlobIterator.xml
--- phpdox-0.11.2/dependencies/php/classes/GlobIterator.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/GlobIterator.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,12 +1,67 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/GmagickDraw.xml phpdox-0.12.0/dependencies/php/classes/GmagickDraw.xml
--- phpdox-0.11.2/dependencies/php/classes/GmagickDraw.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/GmagickDraw.xml 2019-03-13 09:34:17.000000000 +0000
@@ -177,7 +177,7 @@
-
+
@@ -191,14 +191,14 @@
-
+
-
+
@@ -219,21 +219,21 @@
-
+
-
+
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/Gmagick.xml phpdox-0.12.0/dependencies/php/classes/Gmagick.xml
--- phpdox-0.11.2/dependencies/php/classes/Gmagick.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Gmagick.xml 2019-03-13 09:34:17.000000000 +0000
@@ -351,7 +351,7 @@
-
+
@@ -388,7 +388,7 @@
-
+
@@ -412,25 +412,25 @@
-
+
-
+
-
+
-
+
@@ -467,7 +467,7 @@
-
+
@@ -490,7 +490,7 @@
-
+
@@ -610,7 +610,7 @@
-
+
@@ -753,14 +753,14 @@
-
+
-
+
@@ -768,7 +768,7 @@
-
+
@@ -839,7 +839,7 @@
-
+
@@ -854,14 +854,14 @@
-
+
-
+
@@ -876,7 +876,7 @@
-
+
@@ -913,14 +913,14 @@
-
+
-
+
@@ -928,7 +928,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/HashContext.xml phpdox-0.12.0/dependencies/php/classes/HashContext.xml
--- phpdox-0.11.2/dependencies/php/classes/HashContext.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/HashContext.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,9 @@
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/HRTime_PerformanceCounter.xml phpdox-0.12.0/dependencies/php/classes/HRTime_PerformanceCounter.xml
--- phpdox-0.11.2/dependencies/php/classes/HRTime_PerformanceCounter.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/HRTime_PerformanceCounter.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
@@ -17,6 +17,6 @@
-
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/HRTime_StopWatch.xml phpdox-0.12.0/dependencies/php/classes/HRTime_StopWatch.xml
--- phpdox-0.11.2/dependencies/php/classes/HRTime_StopWatch.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/HRTime_StopWatch.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,35 +1,35 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
@@ -62,6 +62,6 @@
-
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/HRTime_Unit.xml phpdox-0.12.0/dependencies/php/classes/HRTime_Unit.xml
--- phpdox-0.11.2/dependencies/php/classes/HRTime_Unit.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/HRTime_Unit.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/ImagickDraw.xml phpdox-0.12.0/dependencies/php/classes/ImagickDraw.xml
--- phpdox-0.11.2/dependencies/php/classes/ImagickDraw.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/ImagickDraw.xml 2019-03-13 09:34:17.000000000 +0000
@@ -593,7 +593,7 @@
-
+
@@ -731,10 +731,10 @@
-
+
-
-
+
+
@@ -844,21 +844,21 @@
-
+
-
+
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/ImagickKernel.xml phpdox-0.12.0/dependencies/php/classes/ImagickKernel.xml
--- phpdox-0.11.2/dependencies/php/classes/ImagickKernel.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/ImagickKernel.xml 2019-03-13 09:34:17.000000000 +0000
@@ -12,13 +12,14 @@
+
-
+
@@ -40,6 +41,8 @@
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/ImagickPixel.xml phpdox-0.12.0/dependencies/php/classes/ImagickPixel.xml
--- phpdox-0.11.2/dependencies/php/classes/ImagickPixel.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/ImagickPixel.xml 2019-03-13 09:34:17.000000000 +0000
@@ -24,7 +24,7 @@
-
+
@@ -41,7 +41,7 @@
-
+
@@ -54,8 +54,9 @@
-
+
+
@@ -103,9 +104,9 @@
-
+
-
+
@@ -118,10 +119,10 @@
-
+
-
+
@@ -135,7 +136,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/Imagick.xml phpdox-0.12.0/dependencies/php/classes/Imagick.xml
--- phpdox-0.11.2/dependencies/php/classes/Imagick.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Imagick.xml 2019-03-13 09:34:17.000000000 +0000
@@ -18,6 +18,7 @@
+
@@ -87,9 +88,9 @@
-
+
-
+
@@ -107,7 +108,7 @@
-
+
@@ -132,11 +133,11 @@
-
+
-
-
-
+
+
+
@@ -159,9 +160,9 @@
-
+
-
+
@@ -203,7 +204,7 @@
-
+
@@ -229,13 +230,14 @@
+
-
+
-
+
@@ -291,7 +293,7 @@
-
+
@@ -319,10 +321,10 @@
-
-
+
+
-
+
@@ -341,6 +343,7 @@
+
@@ -378,7 +381,7 @@
-
+
@@ -499,10 +502,10 @@
-
+
-
+
@@ -538,7 +541,7 @@
-
+
@@ -1222,7 +1225,7 @@
-
+
@@ -1256,10 +1259,10 @@
-
+
-
-
+
+
@@ -1310,7 +1313,7 @@
-
+
@@ -1377,12 +1380,12 @@
-
+
-
+
@@ -1661,9 +1664,9 @@
-
+
-
+
@@ -1733,6 +1736,7 @@
+
@@ -1753,10 +1757,10 @@
-
+
-
-
+
+
@@ -1785,6 +1789,7 @@
+
@@ -1799,12 +1804,12 @@
-
+
-
+
@@ -1907,7 +1912,7 @@
-
+
@@ -2260,14 +2265,14 @@
-
+
-
+
@@ -2282,7 +2287,7 @@
-
+
@@ -2388,8 +2393,8 @@
-
-
+
+
@@ -2427,12 +2432,12 @@
-
+
-
+
@@ -2495,6 +2500,7 @@
+
@@ -2503,10 +2509,11 @@
+
-
+
@@ -2520,7 +2527,7 @@
-
+
@@ -2615,6 +2622,7 @@
+
@@ -2630,5 +2638,6 @@
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/IntlBreakIterator.xml phpdox-0.12.0/dependencies/php/classes/IntlBreakIterator.xml
--- phpdox-0.11.2/dependencies/php/classes/IntlBreakIterator.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/IntlBreakIterator.xml 2019-03-13 09:34:17.000000000 +0000
@@ -105,145 +105,145 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
Object oriented style (method):
-
+
Object oriented style (method):
-
+
Object oriented style (method):
-
+
Object oriented style (method):
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/IntlCalendar.xml phpdox-0.12.0/dependencies/php/classes/IntlCalendar.xml
--- phpdox-0.11.2/dependencies/php/classes/IntlCalendar.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/IntlCalendar.xml 2019-03-13 09:34:17.000000000 +0000
@@ -444,7 +444,7 @@
-
+
@@ -453,7 +453,7 @@
-
+
@@ -768,17 +768,17 @@
Object oriented style
-
+
-
+
-
+
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/IntlCodePointBreakIterator.xml phpdox-0.12.0/dependencies/php/classes/IntlCodePointBreakIterator.xml
--- phpdox-0.11.2/dependencies/php/classes/IntlCodePointBreakIterator.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/IntlCodePointBreakIterator.xml 2019-03-13 09:34:17.000000000 +0000
@@ -99,7 +99,7 @@
-
+
@@ -111,145 +111,145 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/IntlDateFormatter.xml phpdox-0.12.0/dependencies/php/classes/IntlDateFormatter.xml
--- phpdox-0.11.2/dependencies/php/classes/IntlDateFormatter.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/IntlDateFormatter.xml 2019-03-13 09:34:17.000000000 +0000
@@ -60,7 +60,7 @@
- Object oriented style
+ Object oriented style
@@ -154,7 +154,7 @@
Object oriented style
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/IntlGregorianCalendar.xml phpdox-0.12.0/dependencies/php/classes/IntlGregorianCalendar.xml
--- phpdox-0.11.2/dependencies/php/classes/IntlGregorianCalendar.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/IntlGregorianCalendar.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,900 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/IntlIterator.xml phpdox-0.12.0/dependencies/php/classes/IntlIterator.xml
--- phpdox-0.11.2/dependencies/php/classes/IntlIterator.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/IntlIterator.xml 2019-03-13 09:34:17.000000000 +0000
@@ -4,31 +4,31 @@
-
+
-
+
-
+
-
+
-
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/IntlPartsIterator.xml phpdox-0.12.0/dependencies/php/classes/IntlPartsIterator.xml
--- phpdox-0.11.2/dependencies/php/classes/IntlPartsIterator.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/IntlPartsIterator.xml 2019-03-13 09:34:17.000000000 +0000
@@ -19,37 +19,37 @@
-
+
-
+
-
+
-
+
-
+
-
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/IntlRuleBasedBreakIterator.xml phpdox-0.12.0/dependencies/php/classes/IntlRuleBasedBreakIterator.xml
--- phpdox-0.11.2/dependencies/php/classes/IntlRuleBasedBreakIterator.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/IntlRuleBasedBreakIterator.xml 2019-03-13 09:34:17.000000000 +0000
@@ -107,25 +107,25 @@
-
+
-
+
-
+
-
+
@@ -137,145 +137,145 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/IntlTimeZone.xml phpdox-0.12.0/dependencies/php/classes/IntlTimeZone.xml
--- phpdox-0.11.2/dependencies/php/classes/IntlTimeZone.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/IntlTimeZone.xml 2019-03-13 09:34:17.000000000 +0000
@@ -13,7 +13,7 @@
-
+
@@ -37,6 +37,15 @@
+
+
+
+
+
+
+
+
+
@@ -58,13 +67,13 @@
-
+
-
+
@@ -73,12 +82,12 @@
-
+
Object oriented style (method):
-
+
@@ -99,28 +108,56 @@
+
+
+
+
+
+
+
+
-
+
-
-
+
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/JsonException.xml phpdox-0.12.0/dependencies/php/classes/JsonException.xml
--- phpdox-0.11.2/dependencies/php/classes/JsonException.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/JsonException.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,86 @@
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/KTaglib_Tag.xml phpdox-0.12.0/dependencies/php/classes/KTaglib_Tag.xml
--- phpdox-0.11.2/dependencies/php/classes/KTaglib_Tag.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/KTaglib_Tag.xml 2019-03-13 09:34:17.000000000 +0000
@@ -2,7 +2,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/Locale.xml phpdox-0.12.0/dependencies/php/classes/Locale.xml
--- phpdox-0.11.2/dependencies/php/classes/Locale.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Locale.xml 2019-03-13 09:34:17.000000000 +0000
@@ -123,14 +123,14 @@
- Object oriented style
+ Object oriented style
- Object oriented style
+ Object oriented style
diff -Nru phpdox-0.11.2/dependencies/php/classes/LuaClosure.xml phpdox-0.12.0/dependencies/php/classes/LuaClosure.xml
--- phpdox-0.11.2/dependencies/php/classes/LuaClosure.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/LuaClosure.xml 2019-03-13 09:34:17.000000000 +0000
@@ -2,10 +2,9 @@
-
+
-
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Memcached.xml phpdox-0.12.0/dependencies/php/classes/Memcached.xml
--- phpdox-0.11.2/dependencies/php/classes/Memcached.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Memcached.xml 2019-03-13 09:34:17.000000000 +0000
@@ -156,12 +156,12 @@
- Memcached::get returns the item that was previously stored under the key. If the item is found and cas_token variable is provided, it will contain the CAS token value for the item. See Memcached::cas for how to use CAS tokens. Read-through caching callback may be specified via cache_cb parameter.
+ Memcached::get returns the item that was previously stored under the key. If the item is found and the flags is given Memcached::GET_EXTENDED, it will also return the CAS token value for the item. See Memcached::cas for how to use CAS tokens. Read-through caching callback may be specified via cache_cb parameter.
-
+
@@ -177,7 +177,7 @@
-
+
@@ -200,11 +200,10 @@
- Memcached::getMulti is similar to Memcached::get, but instead of a single key item, it retrieves multiple items the keys of which are specified in the keys array. If cas_tokens variable is provided, it is filled with the CAS token values for the found items. Unlike Memcached::get it is not possible to specify a read-through cache callback for Memcached::getMulti, because the memcache protocol does not provide information on which keys were not found in the multi-key request.
+ Memcached::getMulti is similar to Memcached::get, but instead of a single key item, it retrieves multiple items the keys of which are specified in the keys array. Before v3.0 a second argument cas_tokens was in use. It was filled with the CAS token values for the found items. The cas_tokens parameter was removed in v3.0 of the extension. It was replaced with a new flag Memcached::GET_EXTENDED that needs is to be used as the value for flags.
-
@@ -214,7 +213,6 @@
-
diff -Nru phpdox-0.11.2/dependencies/php/classes/MessageFormatter.xml phpdox-0.12.0/dependencies/php/classes/MessageFormatter.xml
--- phpdox-0.11.2/dependencies/php/classes/MessageFormatter.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MessageFormatter.xml 2019-03-13 09:34:17.000000000 +0000
@@ -46,7 +46,7 @@
- Object oriented style
+ Object oriented style
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoBinData.xml phpdox-0.12.0/dependencies/php/classes/MongoBinData.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoBinData.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoBinData.xml 2019-03-13 09:34:17.000000000 +0000
@@ -49,7 +49,7 @@
- Creates a new binary data object.
+ Creates a new binary data object.
@@ -57,7 +57,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoClient.xml phpdox-0.12.0/dependencies/php/classes/MongoClient.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoClient.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoClient.xml 2019-03-13 09:34:17.000000000 +0000
@@ -136,7 +136,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoCollection.xml phpdox-0.12.0/dependencies/php/classes/MongoCollection.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoCollection.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoCollection.xml 2019-03-13 09:34:17.000000000 +0000
@@ -80,7 +80,7 @@
- Creates an index on the specified field(s) if it does not already exist. Fields may be indexed with a direction (e.g. ascending or descending) or a special type (e.g. text, geospatial, hashed).
+ Creates an index on the specified field(s) if it does not already exist. Fields may be indexed with a direction (e.g. ascending or descending) or a special type (e.g. text, geospatial, hashed).
@@ -101,7 +101,7 @@
-
+
@@ -115,7 +115,7 @@
- This method is deprecated since version 1.5.0. Please use MongoCollection::createIndex instead.
+ This method is deprecated since version 1.5.0. Please use MongoCollection::createIndex instead.
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoCommandCursor.xml phpdox-0.12.0/dependencies/php/classes/MongoCommandCursor.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoCommandCursor.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoCommandCursor.xml 2019-03-13 09:34:17.000000000 +0000
@@ -3,7 +3,7 @@
-
+
@@ -85,7 +85,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoCursor.xml phpdox-0.12.0/dependencies/php/classes/MongoCursor.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoCursor.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoCursor.xml 2019-03-13 09:34:17.000000000 +0000
@@ -32,7 +32,7 @@
-
+
@@ -68,7 +68,7 @@
- Please do not use me.
+ Please do not use me.
@@ -227,7 +227,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDate.xml phpdox-0.12.0/dependencies/php/classes/MongoDate.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDate.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDate.xml 2019-03-13 09:34:17.000000000 +0000
@@ -14,7 +14,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_BSON_Binary.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_BSON_Binary.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_BSON_Binary.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_BSON_Binary.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,6 +1,6 @@
-
-
+
+
@@ -42,7 +42,7 @@
-
+
@@ -53,7 +53,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_BSON_DBPointer.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_BSON_DBPointer.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_BSON_DBPointer.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_BSON_DBPointer.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,35 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_BSON_Decimal128.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_BSON_Decimal128.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_BSON_Decimal128.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_BSON_Decimal128.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,6 +1,6 @@
-
-
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_BSON_Int64.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_BSON_Int64.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_BSON_Int64.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_BSON_Int64.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,35 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_BSON_Javascript.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_BSON_Javascript.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_BSON_Javascript.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_BSON_Javascript.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,6 +1,6 @@
-
-
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_BSON_MaxKey.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_BSON_MaxKey.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_BSON_MaxKey.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_BSON_MaxKey.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,6 +1,6 @@
-
-
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_BSON_MinKey.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_BSON_MinKey.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_BSON_MinKey.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_BSON_MinKey.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,6 +1,6 @@
-
-
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_BSON_ObjectId.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_BSON_ObjectId.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_BSON_ObjectId.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_BSON_ObjectId.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,42 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_BSON_ObjectID.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_BSON_ObjectID.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_BSON_ObjectID.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_BSON_ObjectID.xml 1970-01-01 00:00:00.000000000 +0000
@@ -1,42 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_BSON_Persistable.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_BSON_Persistable.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_BSON_Persistable.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_BSON_Persistable.xml 1970-01-01 00:00:00.000000000 +0000
@@ -1,17 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_BSON_Regex.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_BSON_Regex.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_BSON_Regex.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_BSON_Regex.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,6 +1,6 @@
-
-
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_BSON_Symbol.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_BSON_Symbol.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_BSON_Symbol.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_BSON_Symbol.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,35 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_BSON_Timestamp.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_BSON_Timestamp.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_BSON_Timestamp.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_BSON_Timestamp.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,14 +1,26 @@
-
-
+
+
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_BSON_Undefined.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_BSON_Undefined.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_BSON_Undefined.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_BSON_Undefined.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,35 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_BSON_UTCDateTime.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_BSON_UTCDateTime.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_BSON_UTCDateTime.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_BSON_UTCDateTime.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,6 +1,6 @@
-
-
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_BulkWrite.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_BulkWrite.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_BulkWrite.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_BulkWrite.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Command.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Command.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Command.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Command.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,10 +1,11 @@
-
+
-
+ Constructs a new MongoDB\Driver\Command, which is an immutable value object that represents a database command. The command may then be executed with MongoDB\Driver\Manager::executeCommand.
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_CursorId.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_CursorId.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_CursorId.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_CursorId.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Cursor.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Cursor.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Cursor.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Cursor.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
@@ -21,7 +21,7 @@
- Returns whether the cursor is still open on the server (i.e. the server has more results that have yet to be sent to the client).
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Exception_AuthenticationException.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Exception_AuthenticationException.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Exception_AuthenticationException.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Exception_AuthenticationException.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,6 +1,13 @@
-
+
+
+ null
+
+
+
+
+
null
@@ -29,6 +36,13 @@
+
+
+
+
+
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Exception_BulkWriteException.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Exception_BulkWriteException.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Exception_BulkWriteException.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Exception_BulkWriteException.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
null
@@ -8,6 +8,13 @@
+
+ null
+
+
+
+
+
null
@@ -42,6 +49,13 @@
+
+
+
+
+
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Exception_CommandException.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Exception_CommandException.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Exception_CommandException.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Exception_CommandException.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,113 @@
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Exception_ConnectionException.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Exception_ConnectionException.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Exception_ConnectionException.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Exception_ConnectionException.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,6 +1,13 @@
-
+
+
+ null
+
+
+
+
+
null
@@ -29,6 +36,13 @@
+
+
+
+
+
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Exception_ConnectionTimeoutException.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Exception_ConnectionTimeoutException.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Exception_ConnectionTimeoutException.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Exception_ConnectionTimeoutException.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,6 +1,13 @@
-
+
+
+ null
+
+
+
+
+
null
@@ -29,6 +36,13 @@
+
+
+
+
+
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Exception_ExecutionTimeoutException.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Exception_ExecutionTimeoutException.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Exception_ExecutionTimeoutException.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Exception_ExecutionTimeoutException.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,6 +1,13 @@
-
+
+
+ null
+
+
+
+
+
null
@@ -29,6 +36,13 @@
+
+
+
+
+
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Exception_InvalidArgumentException.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Exception_InvalidArgumentException.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Exception_InvalidArgumentException.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Exception_InvalidArgumentException.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
null
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Exception_LogicException.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Exception_LogicException.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Exception_LogicException.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Exception_LogicException.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
null
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Exception_RuntimeException.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Exception_RuntimeException.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Exception_RuntimeException.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Exception_RuntimeException.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,6 +1,13 @@
-
+
+
+ null
+
+
+
+
+
null
@@ -29,6 +36,13 @@
+
+
+
+
+
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Exception_ServerException.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Exception_ServerException.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Exception_ServerException.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Exception_ServerException.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,100 @@
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Exception_SSLConnectionException.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Exception_SSLConnectionException.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Exception_SSLConnectionException.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Exception_SSLConnectionException.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,6 +1,13 @@
-
+
+
+ null
+
+
+
+
+
null
@@ -29,6 +36,13 @@
+
+
+
+
+
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Exception_UnexpectedValueException.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Exception_UnexpectedValueException.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Exception_UnexpectedValueException.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Exception_UnexpectedValueException.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
null
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Exception_WriteException.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Exception_WriteException.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Exception_WriteException.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Exception_WriteException.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
null
@@ -8,6 +8,13 @@
+
+ null
+
+
+
+
+
null
@@ -42,6 +49,13 @@
+
+
+
+
+
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Manager.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Manager.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Manager.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Manager.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
@@ -16,16 +16,16 @@
-
+
-
+ Selects a server according to the "readPreference" option and executes the command on that server. By default, the read preference from the MongoDB Connection URI will be used.
-
+
@@ -34,7 +34,34 @@
-
+
+
+
+
+ Selects a server according to the "readPreference" option and executes the command on that server. By default, the read preference from the MongoDB Connection URI will be used.
+
+
+
+
+
+
+
+
+ Executes the command on the primary server.
+
+
+
+
+
+
+
+
+ Executes the command on the primary server.
+
+
+
+
+
@@ -50,7 +77,7 @@
- Returns an array of MongoDB\Driver\Server instances to which this manager is connected.
+
@@ -62,9 +89,16 @@
- Selects a MongoDB\Driver\Server matching readPreference. This may be used to preselect a server in order to perform version checking before executing an operation.
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Monitoring_CommandFailedEvent.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Monitoring_CommandFailedEvent.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Monitoring_CommandFailedEvent.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Monitoring_CommandFailedEvent.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,45 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Monitoring_CommandStartedEvent.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Monitoring_CommandStartedEvent.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Monitoring_CommandStartedEvent.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Monitoring_CommandStartedEvent.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,39 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Monitoring_CommandSucceededEvent.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Monitoring_CommandSucceededEvent.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Monitoring_CommandSucceededEvent.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Monitoring_CommandSucceededEvent.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,39 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Query.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Query.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Query.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Query.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,8 +1,8 @@
-
+
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_ReadConcern.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_ReadConcern.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_ReadConcern.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_ReadConcern.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,6 +1,11 @@
-
+
+
+
+
+
+
@@ -24,7 +29,7 @@
-
+
@@ -35,4 +40,10 @@
+
+
+ Returns whether this is the default read concern (i.e. no options are specified). This method is primarily intended to be used in conjunction with MongoDB\Driver\Manager::getReadConcern to determine whether the Manager has been constructed without any read concern options.
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_ReadPreference.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_ReadPreference.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_ReadPreference.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_ReadPreference.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
@@ -44,23 +44,23 @@
-
+
-
+
-
+
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Server.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Server.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Server.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Server.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
@@ -58,25 +58,52 @@
-
+
- Executes command on this server.
+ Executes the command on this server.
-
+
- Executes query on this server.
+
-
+
+
+
+
+ Executes the command on this server.
+
+
+
+
+
+
+
+
+ Executes the command on this server.
+
+
+
+
+
+
+
+
+ Executes the command on this server.
+
+
+
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Session.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Session.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_Session.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_Session.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,66 @@
+
+
+
+
+
+
+
+
+
+
+ Advances the cluster time for this session. If the cluster time is less than or equal to the session's current cluster time, this function is a no-op.
+
+
+
+
+
+
+ Advances the operation time for this session. If the operation time is less than or equal to the session's current operation time, this function is a no-op.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ This method starts a new transaction within this session. When the session is attached to operations through the "session" argument, these operations become of the started transaction.
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_WriteConcernError.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_WriteConcernError.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_WriteConcernError.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_WriteConcernError.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_WriteConcern.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_WriteConcern.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_WriteConcern.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_WriteConcern.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
@@ -14,23 +14,23 @@
-
+
-
-
-
+
+
+
-
+
-
+
@@ -39,4 +39,10 @@
+
+
+ Returns whether this is the default write concern (i.e. no options are specified). This method is primarily intended to be used in conjunction with MongoDB\Driver\Manager::getWriteConcern to determine whether the Manager has been constructed without any write concern options.
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_WriteError.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_WriteError.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_WriteError.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_WriteError.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_WriteResult.xml phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_WriteResult.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoDB_Driver_WriteResult.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoDB_Driver_WriteResult.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,27 +1,27 @@
-
+
-
+
-
+
-
+
-
+
@@ -33,7 +33,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoInt32.xml phpdox-0.12.0/dependencies/php/classes/MongoInt32.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoInt32.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoInt32.xml 2019-03-13 09:34:17.000000000 +0000
@@ -9,14 +9,14 @@
-
+
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoInt64.xml phpdox-0.12.0/dependencies/php/classes/MongoInt64.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoInt64.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoInt64.xml 2019-03-13 09:34:17.000000000 +0000
@@ -9,14 +9,14 @@
-
+
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoPool.xml phpdox-0.12.0/dependencies/php/classes/MongoPool.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoPool.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoPool.xml 2019-03-13 09:34:17.000000000 +0000
@@ -8,13 +8,13 @@
-
+
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/MongoTimestamp.xml phpdox-0.12.0/dependencies/php/classes/MongoTimestamp.xml
--- phpdox-0.11.2/dependencies/php/classes/MongoTimestamp.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MongoTimestamp.xml 2019-03-13 09:34:17.000000000 +0000
@@ -14,7 +14,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/Mongo.xml phpdox-0.12.0/dependencies/php/classes/Mongo.xml
--- phpdox-0.11.2/dependencies/php/classes/Mongo.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Mongo.xml 2019-03-13 09:34:17.000000000 +0000
@@ -27,13 +27,13 @@
-
+
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/Mutex.xml phpdox-0.12.0/dependencies/php/classes/Mutex.xml
--- phpdox-0.11.2/dependencies/php/classes/Mutex.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Mutex.xml 2019-03-13 09:34:17.000000000 +0000
@@ -3,37 +3,37 @@
-
+
-
+
-
+
-
+
Attempt to lock the Mutex for the caller.
-
+
-
+
-
+
-
+
-
+
-
-
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/mysqli_driver.xml phpdox-0.12.0/dependencies/php/classes/mysqli_driver.xml
--- phpdox-0.11.2/dependencies/php/classes/mysqli_driver.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/mysqli_driver.xml 2019-03-13 09:34:17.000000000 +0000
@@ -53,7 +53,7 @@
Object oriented style
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/mysqli_stmt.xml phpdox-0.12.0/dependencies/php/classes/mysqli_stmt.xml
--- phpdox-0.11.2/dependencies/php/classes/mysqli_stmt.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/mysqli_stmt.xml 2019-03-13 09:34:17.000000000 +0000
@@ -147,6 +147,12 @@
+
+
+ Object oriented style
+
+
+
Object oriented style
diff -Nru phpdox-0.11.2/dependencies/php/classes/mysqli.xml phpdox-0.12.0/dependencies/php/classes/mysqli.xml
--- phpdox-0.11.2/dependencies/php/classes/mysqli.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/mysqli.xml 2019-03-13 09:34:17.000000000 +0000
@@ -7,20 +7,6 @@
-
- null
-
- Object oriented style
-
-
-
-
- null
-
- Object oriented style
-
-
-
null
@@ -63,6 +49,13 @@
+
+ null
+
+ Object oriented style
+
+
+
null
@@ -181,6 +174,18 @@
+
+
+ Object oriented style
+
+
+
+
+
+
+
+
+
Object oriented style
@@ -212,6 +217,12 @@
+
+
+
+
+
+
Object oriented style
@@ -305,7 +316,14 @@
-
+ Object oriented style
+
+
+
+
+
+
+ Object oriented style
diff -Nru phpdox-0.11.2/dependencies/php/classes/MysqlndUhConnection.xml phpdox-0.12.0/dependencies/php/classes/MysqlndUhConnection.xml
--- phpdox-0.11.2/dependencies/php/classes/MysqlndUhConnection.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/MysqlndUhConnection.xml 2019-03-13 09:34:17.000000000 +0000
@@ -99,7 +99,7 @@
-
+
@@ -148,7 +148,7 @@
-
+
@@ -329,7 +329,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_CollectionAdd.xml phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_CollectionAdd.xml
--- phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_CollectionAdd.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_CollectionAdd.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_CollectionFind.xml phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_CollectionFind.xml
--- phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_CollectionFind.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_CollectionFind.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,73 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_CollectionModify.xml phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_CollectionModify.xml
--- phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_CollectionModify.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_CollectionModify.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,84 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_CollectionRemove.xml phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_CollectionRemove.xml
--- phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_CollectionRemove.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_CollectionRemove.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,31 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_Collection.xml phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_Collection.xml
--- phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_Collection.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_Collection.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,113 @@
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_ColumnResult.xml phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_ColumnResult.xml
--- phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_ColumnResult.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_ColumnResult.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,75 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_DocResult.xml phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_DocResult.xml
--- phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_DocResult.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_DocResult.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,28 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_Driver.xml phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_Driver.xml
--- phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_Driver.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_Driver.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_Exception.xml phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_Exception.xml
--- phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_Exception.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_Exception.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_ExecutionStatus.xml phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_ExecutionStatus.xml
--- phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_ExecutionStatus.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_ExecutionStatus.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,39 @@
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_Expression.xml phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_Expression.xml
--- phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_Expression.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_Expression.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,16 @@
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_FieldMetadata.xml phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_FieldMetadata.xml
--- phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_FieldMetadata.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_FieldMetadata.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,87 @@
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_Result.xml phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_Result.xml
--- phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_Result.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_Result.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,28 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_RowResult.xml phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_RowResult.xml
--- phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_RowResult.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_RowResult.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,46 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_Schema.xml phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_Schema.xml
--- phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_Schema.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_Schema.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,75 @@
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_Session.xml phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_Session.xml
--- phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_Session.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_Session.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,127 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_SqlStatementResult.xml phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_SqlStatementResult.xml
--- phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_SqlStatementResult.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_SqlStatementResult.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,76 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_SqlStatement.xml phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_SqlStatement.xml
--- phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_SqlStatement.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_SqlStatement.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,50 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_Statement.xml phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_Statement.xml
--- phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_Statement.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_Statement.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,31 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_TableDelete.xml phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_TableDelete.xml
--- phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_TableDelete.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_TableDelete.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,45 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_TableInsert.xml phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_TableInsert.xml
--- phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_TableInsert.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_TableInsert.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_TableSelect.xml phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_TableSelect.xml
--- phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_TableSelect.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_TableSelect.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,74 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_TableUpdate.xml phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_TableUpdate.xml
--- phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_TableUpdate.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_TableUpdate.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,47 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_Table.xml phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_Table.xml
--- phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_Table.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_Table.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,74 @@
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_Warning.xml phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_Warning.xml
--- phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_Warning.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_Warning.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,27 @@
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_XSession.xml phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_XSession.xml
--- phpdox-0.11.2/dependencies/php/classes/mysql_xdevapi_XSession.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/mysql_xdevapi_XSession.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,9 @@
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/NoRewindIterator.xml phpdox-0.12.0/dependencies/php/classes/NoRewindIterator.xml
--- phpdox-0.11.2/dependencies/php/classes/NoRewindIterator.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/NoRewindIterator.xml 2019-03-13 09:34:17.000000000 +0000
@@ -34,7 +34,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/Normalizer.xml phpdox-0.12.0/dependencies/php/classes/Normalizer.xml
--- phpdox-0.11.2/dependencies/php/classes/Normalizer.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Normalizer.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,8 +1,15 @@
+
+
+ Object oriented style
+
+
+
+
- Object oriented style
+ Object oriented style
diff -Nru phpdox-0.11.2/dependencies/php/classes/NumberFormatter.xml phpdox-0.12.0/dependencies/php/classes/NumberFormatter.xml
--- phpdox-0.11.2/dependencies/php/classes/NumberFormatter.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/NumberFormatter.xml 2019-03-13 09:34:17.000000000 +0000
@@ -43,13 +43,13 @@
- Object oriented style
+ Object oriented style
- Object oriented style
+ Object oriented style
diff -Nru phpdox-0.11.2/dependencies/php/classes/OAuth.xml phpdox-0.12.0/dependencies/php/classes/OAuth.xml
--- phpdox-0.11.2/dependencies/php/classes/OAuth.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/OAuth.xml 2019-03-13 09:34:17.000000000 +0000
@@ -144,7 +144,7 @@
-
+
@@ -179,7 +179,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/ParentIterator.xml phpdox-0.12.0/dependencies/php/classes/ParentIterator.xml
--- phpdox-0.11.2/dependencies/php/classes/ParentIterator.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/ParentIterator.xml 2019-03-13 09:34:17.000000000 +0000
@@ -38,4 +38,10 @@
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Parle_ErrorInfo.xml phpdox-0.12.0/dependencies/php/classes/Parle_ErrorInfo.xml
--- phpdox-0.11.2/dependencies/php/classes/Parle_ErrorInfo.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Parle_ErrorInfo.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,24 @@
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Parle_LexerException.xml phpdox-0.12.0/dependencies/php/classes/Parle_LexerException.xml
--- phpdox-0.11.2/dependencies/php/classes/Parle_LexerException.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Parle_LexerException.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,86 @@
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Parle_Lexer.xml phpdox-0.12.0/dependencies/php/classes/Parle_Lexer.xml
--- phpdox-0.11.2/dependencies/php/classes/Parle_Lexer.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Parle_Lexer.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,125 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Parle_ParserException.xml phpdox-0.12.0/dependencies/php/classes/Parle_ParserException.xml
--- phpdox-0.11.2/dependencies/php/classes/Parle_ParserException.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Parle_ParserException.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,86 @@
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Parle_Parser.xml phpdox-0.12.0/dependencies/php/classes/Parle_Parser.xml
--- phpdox-0.11.2/dependencies/php/classes/Parle_Parser.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Parle_Parser.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,167 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Parle_RLexer.xml phpdox-0.12.0/dependencies/php/classes/Parle_RLexer.xml
--- phpdox-0.11.2/dependencies/php/classes/Parle_RLexer.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Parle_RLexer.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,151 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Push a pattern for lexeme recognition.
+
+
+
+
+
+
+
+ Push a pattern for lexeme recognition.
+
+
+
+
+
+
+
+
+
+ Push a pattern for lexeme recognition.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Parle_RParser.xml phpdox-0.12.0/dependencies/php/classes/Parle_RParser.xml
--- phpdox-0.11.2/dependencies/php/classes/Parle_RParser.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Parle_RParser.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,167 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Parle_Stack.xml phpdox-0.12.0/dependencies/php/classes/Parle_Stack.xml
--- phpdox-0.11.2/dependencies/php/classes/Parle_Stack.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Parle_Stack.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,37 @@
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Parle_Token.xml phpdox-0.12.0/dependencies/php/classes/Parle_Token.xml
--- phpdox-0.11.2/dependencies/php/classes/Parle_Token.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Parle_Token.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,32 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/ParseError.xml phpdox-0.12.0/dependencies/php/classes/ParseError.xml
--- phpdox-0.11.2/dependencies/php/classes/ParseError.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/ParseError.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,6 +1,34 @@
-
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/PDOStatement.xml phpdox-0.12.0/dependencies/php/classes/PDOStatement.xml
--- phpdox-0.11.2/dependencies/php/classes/PDOStatement.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/PDOStatement.xml 2019-03-13 09:34:17.000000000 +0000
@@ -41,7 +41,7 @@
- PDOStatement::closeCursor frees up the connection to the server so that other SQL statements may be issued, but leaves the statement in a state that enables it to be executed again.
+ PDOStatement::closeCursor frees up the connection to the server so that other SQL statements may be issued, but leaves the statement in a state that enables it to be executed again.
@@ -103,7 +103,7 @@
- Fetches the next row and returns it as an object. This function is an alternative to PDOStatement::fetch with PDO::FETCH_CLASS or PDO::FETCH_OBJ style.
+ Fetches the next row and returns it as an object. This function is an alternative to PDOStatement::fetch with PDO::FETCH_CLASS or PDO::FETCH_OBJ style.
diff -Nru phpdox-0.11.2/dependencies/php/classes/PDO.xml phpdox-0.12.0/dependencies/php/classes/PDO.xml
--- phpdox-0.11.2/dependencies/php/classes/PDO.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/PDO.xml 2019-03-13 09:34:17.000000000 +0000
@@ -7,7 +7,7 @@
-
+
@@ -25,7 +25,7 @@
-
+
@@ -69,7 +69,7 @@
- Prepares an SQL statement to be executed by the PDOStatement::execute method. The SQL statement can contain zero or more named (:name) or question mark (?) parameter markers for which real values will be substituted when the statement is executed. You cannot use both named and question mark parameter markers within the same SQL statement; pick one or the other parameter style. Use these parameters to bind any user-input, do not include the user-input directly in the query.
+ Prepares an SQL statement to be executed by the PDOStatement::execute method. The statement template can contain zero or more named (:name) or question mark (?) parameter markers for which real values will be substituted when the statement is executed. Both named and question mark parameter markers cannot be used within the same statement template; only one or the other parameter style. Use these parameters to bind any user-input, do not include the user-input directly in the query.
@@ -84,7 +84,7 @@
- PDO::quote places quotes around the input string (if required) and escapes special characters within the input string, using a quoting style appropriate to the underlying driver.
+ PDO::quote places quotes around the input string (if required) and escapes special characters within the input string, using a quoting style appropriate to the underlying driver.
diff -Nru phpdox-0.11.2/dependencies/php/classes/PharData.xml phpdox-0.12.0/dependencies/php/classes/PharData.xml
--- phpdox-0.11.2/dependencies/php/classes/PharData.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/PharData.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,10 +1,65 @@
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
@@ -19,7 +74,7 @@
-
+
@@ -34,7 +89,7 @@
-
+
@@ -51,7 +106,7 @@
For tar-based archives, this method throws a BadMethodCallException, as compression of individual files within a tar archive is not supported by the file format. Use PharData::compress to compress an entire tar-based archive.
-
+
@@ -134,7 +189,7 @@
-
+
@@ -142,21 +197,21 @@
-
+
-
+
-
+
@@ -171,14 +226,14 @@
- This method requires the php.ini setting phar.readonly to be set to 0 in order to work for Phar objects. Otherwise, a PharException will be thrown.
+ This method requires the php.ini setting phar.readonly to be set to 0 in order to work for Phar objects. Otherwise, a PharException will be thrown.
-
+
@@ -353,6 +408,12 @@
+
+
+
+
+
+
@@ -365,6 +426,12 @@
+
+
+
+
+
+
@@ -531,7 +598,7 @@
- This method requires the php.ini setting phar.readonly to be set to 0 in order to work for Phar objects. Otherwise, a PharException will be thrown.
+ This method requires the php.ini setting phar.readonly to be set to 0 in order to work for Phar objects. Otherwise, a PharException will be thrown.
diff -Nru phpdox-0.11.2/dependencies/php/classes/PharFileInfo.xml phpdox-0.12.0/dependencies/php/classes/PharFileInfo.xml
--- phpdox-0.11.2/dependencies/php/classes/PharFileInfo.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/PharFileInfo.xml 2019-03-13 09:34:17.000000000 +0000
@@ -46,6 +46,12 @@
+
+
+
+
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/Phar.xml phpdox-0.12.0/dependencies/php/classes/Phar.xml
--- phpdox-0.11.2/dependencies/php/classes/Phar.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Phar.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,6 +1,61 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
This method requires the php.ini setting phar.readonly to be set to 0 in order to work for Phar objects. Otherwise, a PharException will be thrown.
@@ -32,7 +87,7 @@
- This method requires the php.ini setting phar.readonly to be set to 0 in order to work for Phar objects. Otherwise, a PharException will be thrown.
+ This method requires the php.ini setting phar.readonly to be set to 0 in order to work for Phar objects. Otherwise, a PharException will be thrown.
@@ -40,7 +95,7 @@
- This method requires the php.ini setting phar.readonly to be set to 0 in order to work for Phar objects. Otherwise, a PharException will be thrown.
+ This method requires the php.ini setting phar.readonly to be set to 0 in order to work for Phar objects. Otherwise, a PharException will be thrown.
@@ -170,6 +225,12 @@
+
+
+
+
+
+
@@ -182,6 +243,12 @@
+
+
+
+
+
+
@@ -220,7 +287,7 @@
- instructs phar to intercept fopen, readfile, file_get_contents, opendir, and all of the stat-related functions. If any of these functions is called from within a phar archive with a relative path, the call is modified to access a file within the phar archive. Absolute paths are assumed to be attempts to load external files from the filesystem.
+ instructs phar to intercept fopen, readfile, file_get_contents, opendir, and all of the stat-related functions. If any of these functions is called from within a phar archive with a relative path, the call is modified to access a file within the phar archive. Absolute paths are assumed to be attempts to load external files from the filesystem.
@@ -290,7 +357,7 @@
- This is an implementation of the ArrayAccess interface allowing direct manipulation of the contents of a Phar archive using array access brackets.
+ This is an implementation of the ArrayAccess interface allowing direct manipulation of the contents of a Phar archive using array access brackets.
@@ -304,7 +371,7 @@
- This method requires the php.ini setting phar.readonly to be set to 0 in order to work for Phar objects. Otherwise, a PharException will be thrown.
+ This method requires the php.ini setting phar.readonly to be set to 0 in order to work for Phar objects. Otherwise, a PharException will be thrown.
@@ -312,7 +379,7 @@
- This method requires the php.ini setting phar.readonly to be set to 0 in order to work for Phar objects. Otherwise, a PharException will be thrown.
+ This method requires the php.ini setting phar.readonly to be set to 0 in order to work for Phar objects. Otherwise, a PharException will be thrown.
@@ -348,7 +415,7 @@
- This method requires the php.ini setting phar.readonly to be set to 0 in order to work for Phar objects. Otherwise, a PharException will be thrown.
+ This method requires the php.ini setting phar.readonly to be set to 0 in order to work for Phar objects. Otherwise, a PharException will be thrown.
diff -Nru phpdox-0.11.2/dependencies/php/classes/phdfs.xml phpdox-0.12.0/dependencies/php/classes/phdfs.xml
--- phpdox-0.11.2/dependencies/php/classes/phdfs.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/phdfs.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,118 @@
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/pht_AtomicInteger.xml phpdox-0.12.0/dependencies/php/classes/pht_AtomicInteger.xml
--- phpdox-0.11.2/dependencies/php/classes/pht_AtomicInteger.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/pht_AtomicInteger.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ This method will acquire the mutex lock associated with the atomic integer. The mutex lock only needs to be acquired when needing to group together multiple operations.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/pht_HashTable.xml phpdox-0.12.0/dependencies/php/classes/pht_HashTable.xml
--- phpdox-0.11.2/dependencies/php/classes/pht_HashTable.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/pht_HashTable.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,22 @@
+
+
+
+
+
+ This method will acquire the mutex lock associated with the hash table. The mutex lock should always be acquired when manipulating the hash table if it is being used by multiple threads.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/pht_Queue.xml phpdox-0.12.0/dependencies/php/classes/pht_Queue.xml
--- phpdox-0.11.2/dependencies/php/classes/pht_Queue.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/pht_Queue.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,41 @@
+
+
+
+
+
+ This method will remove a value from the front of the queue (in constant time). Attempting to return the front value from an empty queue will result in an Error exception.
+
+
+
+
+
+ This method will acquire the mutex lock associated with the queue. The mutex lock should always be acquired when manipulating the queue if it is being used by multiple threads.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/pht_Thread.xml phpdox-0.12.0/dependencies/php/classes/pht_Thread.xml
--- phpdox-0.11.2/dependencies/php/classes/pht_Thread.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/pht_Thread.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,45 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/pht_Vector.xml phpdox-0.12.0/dependencies/php/classes/pht_Vector.xml
--- phpdox-0.11.2/dependencies/php/classes/pht_Vector.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/pht_Vector.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,87 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ This method deletes a value at the specified offset in the vector (in linear time).
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ This method will acquire the mutex lock associated with the vector. The mutex lock should always be acquired when manipulating the vector if it is being used by multiple threads.
+
+
+
+
+
+
+
+
+
+
+
+ This method pushes a value onto the end of a vector (in constant time). The vector will automatically be resized if it is not large enough.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ This method updates a value at the specified offset in the vector (in linear time). The vector will automatically be resized if it is not large enough.
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Pool.xml phpdox-0.12.0/dependencies/php/classes/Pool.xml
--- phpdox-0.11.2/dependencies/php/classes/Pool.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Pool.xml 2019-03-13 09:34:17.000000000 +0000
@@ -18,12 +18,6 @@
-
- null
-
-
-
-
null
@@ -48,7 +42,7 @@
-
+
@@ -57,7 +51,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/RecursiveArrayIterator.xml phpdox-0.12.0/dependencies/php/classes/RecursiveArrayIterator.xml
--- phpdox-0.11.2/dependencies/php/classes/RecursiveArrayIterator.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/RecursiveArrayIterator.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,6 +1,16 @@
+
+
+
+
+
+
+
+
+
+
@@ -8,13 +18,13 @@
-
+
-
+
@@ -96,31 +106,31 @@
-
+
-
+
-
+
-
-
+
+
-
+
@@ -153,14 +163,14 @@
-
+
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/RecursiveCachingIterator.xml phpdox-0.12.0/dependencies/php/classes/RecursiveCachingIterator.xml
--- phpdox-0.11.2/dependencies/php/classes/RecursiveCachingIterator.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/RecursiveCachingIterator.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,13 +1,43 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
@@ -82,7 +112,7 @@
-
+
@@ -96,8 +126,8 @@
-
-
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/RecursiveCallbackFilterIterator.xml phpdox-0.12.0/dependencies/php/classes/RecursiveCallbackFilterIterator.xml
--- phpdox-0.11.2/dependencies/php/classes/RecursiveCallbackFilterIterator.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/RecursiveCallbackFilterIterator.xml 2019-03-13 09:34:17.000000000 +0000
@@ -24,7 +24,7 @@
-
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/RecursiveDirectoryIterator.xml phpdox-0.12.0/dependencies/php/classes/RecursiveDirectoryIterator.xml
--- phpdox-0.11.2/dependencies/php/classes/RecursiveDirectoryIterator.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/RecursiveDirectoryIterator.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,6 +1,61 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/RecursiveIteratorIterator.xml phpdox-0.12.0/dependencies/php/classes/RecursiveIteratorIterator.xml
--- phpdox-0.11.2/dependencies/php/classes/RecursiveIteratorIterator.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/RecursiveIteratorIterator.xml 2019-03-13 09:34:17.000000000 +0000
@@ -126,7 +126,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/RecursiveRegexIterator.xml phpdox-0.12.0/dependencies/php/classes/RecursiveRegexIterator.xml
--- phpdox-0.11.2/dependencies/php/classes/RecursiveRegexIterator.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/RecursiveRegexIterator.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,9 +1,39 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
@@ -14,13 +44,13 @@
-
+
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/RecursiveTreeIterator.xml phpdox-0.12.0/dependencies/php/classes/RecursiveTreeIterator.xml
--- phpdox-0.11.2/dependencies/php/classes/RecursiveTreeIterator.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/RecursiveTreeIterator.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,6 +1,26 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -102,7 +122,7 @@
-
+
@@ -135,6 +155,13 @@
+
+
+
+
+
+
+
@@ -254,7 +281,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/ReflectionClassConstant.xml phpdox-0.12.0/dependencies/php/classes/ReflectionClassConstant.xml
--- phpdox-0.11.2/dependencies/php/classes/ReflectionClassConstant.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/ReflectionClassConstant.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,87 @@
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/ReflectionClass.xml phpdox-0.12.0/dependencies/php/classes/ReflectionClass.xml
--- phpdox-0.11.2/dependencies/php/classes/ReflectionClass.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/ReflectionClass.xml 2019-03-13 09:34:17.000000000 +0000
@@ -106,7 +106,7 @@
-
+
@@ -156,6 +156,19 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -283,6 +296,12 @@
+
+
+
+
+
+
@@ -310,22 +329,21 @@
-
+
-
-
+
-
+
@@ -335,11 +353,11 @@
-
+
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/ReflectionFunction.xml phpdox-0.12.0/dependencies/php/classes/ReflectionFunction.xml
--- phpdox-0.11.2/dependencies/php/classes/ReflectionFunction.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/ReflectionFunction.xml 2019-03-13 09:34:17.000000000 +0000
@@ -38,7 +38,6 @@
-
diff -Nru phpdox-0.11.2/dependencies/php/classes/ReflectionMethod.xml phpdox-0.12.0/dependencies/php/classes/ReflectionMethod.xml
--- phpdox-0.11.2/dependencies/php/classes/ReflectionMethod.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/ReflectionMethod.xml 2019-03-13 09:34:17.000000000 +0000
@@ -53,7 +53,7 @@
-
+
@@ -69,7 +69,7 @@
-
+
@@ -81,7 +81,7 @@
-
+
@@ -91,7 +91,6 @@
-
@@ -159,7 +158,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/ReflectionNamedType.xml phpdox-0.12.0/dependencies/php/classes/ReflectionNamedType.xml
--- phpdox-0.11.2/dependencies/php/classes/ReflectionNamedType.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/ReflectionNamedType.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,28 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/ReflectionObject.xml phpdox-0.12.0/dependencies/php/classes/ReflectionObject.xml
--- phpdox-0.11.2/dependencies/php/classes/ReflectionObject.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/ReflectionObject.xml 2019-03-13 09:34:17.000000000 +0000
@@ -171,6 +171,19 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -298,6 +311,12 @@
+
+
+
+
+
+
@@ -328,7 +347,6 @@
-
@@ -350,7 +368,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/ReflectionParameter.xml phpdox-0.12.0/dependencies/php/classes/ReflectionParameter.xml
--- phpdox-0.11.2/dependencies/php/classes/ReflectionParameter.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/ReflectionParameter.xml 2019-03-13 09:34:17.000000000 +0000
@@ -116,7 +116,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/ReflectionZendExtension.xml phpdox-0.12.0/dependencies/php/classes/ReflectionZendExtension.xml
--- phpdox-0.11.2/dependencies/php/classes/ReflectionZendExtension.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/ReflectionZendExtension.xml 2019-03-13 09:34:17.000000000 +0000
@@ -26,7 +26,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/RegexIterator.xml phpdox-0.12.0/dependencies/php/classes/RegexIterator.xml
--- phpdox-0.11.2/dependencies/php/classes/RegexIterator.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/RegexIterator.xml 2019-03-13 09:34:17.000000000 +0000
@@ -56,13 +56,13 @@
-
+
-
+
@@ -74,21 +74,21 @@
-
+
-
+
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/ResourceBundle.xml phpdox-0.12.0/dependencies/php/classes/ResourceBundle.xml
--- phpdox-0.11.2/dependencies/php/classes/ResourceBundle.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/ResourceBundle.xml 2019-03-13 09:34:17.000000000 +0000
@@ -26,13 +26,13 @@
- Object oriented style
+ Object oriented style
- Object oriented style
+ Object oriented style
diff -Nru phpdox-0.11.2/dependencies/php/classes/RRDCreator.xml phpdox-0.12.0/dependencies/php/classes/RRDCreator.xml
--- phpdox-0.11.2/dependencies/php/classes/RRDCreator.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/RRDCreator.xml 2019-03-13 09:34:17.000000000 +0000
@@ -2,14 +2,14 @@
-
+
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/RRDGraph.xml phpdox-0.12.0/dependencies/php/classes/RRDGraph.xml
--- phpdox-0.11.2/dependencies/php/classes/RRDGraph.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/RRDGraph.xml 2019-03-13 09:34:17.000000000 +0000
@@ -15,7 +15,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/SeasLog.xml phpdox-0.12.0/dependencies/php/classes/SeasLog.xml
--- phpdox-0.11.2/dependencies/php/classes/SeasLog.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/SeasLog.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,205 @@
+
+
+
+
+ Record alert log information. "ALERT" - Action must be taken immediately. Immediate attention should be given to relevant personnel for emergency repairs.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Record critical log information. "CRITICAL" - Critical conditions.Need to be repaired immediately, and the program component is unavailable.
+
+
+
+
+
+
+
+
+ Record debug log information. "DEBUG" - Detailed debug information.Fine-grained information events.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Record emergency log information. "EMERGENCY" - System is unusable.
+
+
+
+
+
+
+
+
+ Record error log information. "ERROR" - Runtime errors that do not require immediate action but should typically.
+
+
+
+
+
+
+
+
+ Flush logs buffer by seaslog.appender: dump to file, or send to remote api with tcp/udp. See also: seaslog.appender_retry seaslog.remote_host seaslog.remote_port
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Record info log information. "INFO" - Interesting events.Emphasizes the running process of the application.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Record notice log information. "NOTICE" - Normal but significant events.Information that is more important than the INFO level during execution.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Record warning log information. "WARNING" - Exceptional occurrences that are not errors. Potentially aberrant information that needs attention and needs to be repaired.
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/SessionHandler.xml phpdox-0.12.0/dependencies/php/classes/SessionHandler.xml
--- phpdox-0.11.2/dependencies/php/classes/SessionHandler.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/SessionHandler.xml 2019-03-13 09:34:17.000000000 +0000
@@ -23,7 +23,7 @@
Cleans up expired sessions. Called randomly by PHP internally when a session starts or when session_start is invoked. The frequency this is called is based on the session.gc_divisor and session.gc_probability configuration directives.
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/SimpleXMLIterator.xml phpdox-0.12.0/dependencies/php/classes/SimpleXMLIterator.xml
--- phpdox-0.11.2/dependencies/php/classes/SimpleXMLIterator.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/SimpleXMLIterator.xml 2019-03-13 09:34:17.000000000 +0000
@@ -15,7 +15,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/SoapClient.xml phpdox-0.12.0/dependencies/php/classes/SoapClient.xml
--- phpdox-0.11.2/dependencies/php/classes/SoapClient.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/SoapClient.xml 2019-03-13 09:34:17.000000000 +0000
@@ -6,16 +6,16 @@
-
+
-
+
-
+
Performs SOAP request over HTTP.
@@ -27,6 +27,12 @@
+
+
+
+
+
+
Returns an array of functions described in the WSDL for the Web service.
diff -Nru phpdox-0.11.2/dependencies/php/classes/SoapServer.xml phpdox-0.12.0/dependencies/php/classes/SoapServer.xml
--- phpdox-0.11.2/dependencies/php/classes/SoapServer.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/SoapServer.xml 2019-03-13 09:34:17.000000000 +0000
@@ -52,7 +52,6 @@
-
diff -Nru phpdox-0.11.2/dependencies/php/classes/SolrClient.xml phpdox-0.12.0/dependencies/php/classes/SolrClient.xml
--- phpdox-0.11.2/dependencies/php/classes/SolrClient.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/SolrClient.xml 2019-03-13 09:34:17.000000000 +0000
@@ -130,14 +130,14 @@
-
+
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/SolrCollapseFunction.xml phpdox-0.12.0/dependencies/php/classes/SolrCollapseFunction.xml
--- phpdox-0.11.2/dependencies/php/classes/SolrCollapseFunction.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/SolrCollapseFunction.xml 2019-03-13 09:34:17.000000000 +0000
@@ -24,7 +24,7 @@
-
+
@@ -55,7 +55,7 @@
-
+
@@ -74,7 +74,7 @@
-
+
@@ -95,10 +95,10 @@
-
+
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/SolrDisMaxQuery.xml phpdox-0.12.0/dependencies/php/classes/SolrDisMaxQuery.xml
--- phpdox-0.11.2/dependencies/php/classes/SolrDisMaxQuery.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/SolrDisMaxQuery.xml 2019-03-13 09:34:17.000000000 +0000
@@ -147,7 +147,7 @@
- Sets Boost Function (bf parameter).
+ Sets Boost Function (bf parameter).
@@ -189,7 +189,7 @@
- The Query Phrase Slop is the amount of slop permitted on phrase queries explicitly included in the user's query string with the qf parameter.
+ The Query Phrase Slop is the amount of slop permitted on phrase queries explicitly included in the user's query string with the qf parameter.
@@ -319,7 +319,7 @@
-
+
@@ -406,7 +406,7 @@
-
+
@@ -544,7 +544,7 @@
-
+
@@ -574,7 +574,7 @@
-
+
@@ -592,7 +592,7 @@
-
+
@@ -1048,7 +1048,7 @@
-
+
@@ -1172,7 +1172,7 @@
-
+
@@ -1193,7 +1193,7 @@
-
+
@@ -1214,7 +1214,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/SolrDocument.xml phpdox-0.12.0/dependencies/php/classes/SolrDocument.xml
--- phpdox-0.11.2/dependencies/php/classes/SolrDocument.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/SolrDocument.xml 2019-03-13 09:34:17.000000000 +0000
@@ -99,7 +99,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/SolrInputDocument.xml phpdox-0.12.0/dependencies/php/classes/SolrInputDocument.xml
--- phpdox-0.11.2/dependencies/php/classes/SolrInputDocument.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/SolrInputDocument.xml 2019-03-13 09:34:17.000000000 +0000
@@ -106,7 +106,7 @@
-
+
@@ -138,7 +138,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/SolrQuery.xml phpdox-0.12.0/dependencies/php/classes/SolrQuery.xml
--- phpdox-0.11.2/dependencies/php/classes/SolrQuery.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/SolrQuery.xml 2019-03-13 09:34:17.000000000 +0000
@@ -33,14 +33,14 @@
-
+
-
+
@@ -91,32 +91,32 @@
-
+
-
+
-
+
-
+
-
+
@@ -203,7 +203,7 @@
-
+
@@ -341,7 +341,7 @@
-
+
@@ -371,7 +371,7 @@
-
+
@@ -389,7 +389,7 @@
-
+
@@ -722,7 +722,7 @@
-
+
@@ -845,7 +845,7 @@
-
+
@@ -969,7 +969,7 @@
-
+
@@ -980,42 +980,42 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/SplBool.xml phpdox-0.12.0/dependencies/php/classes/SplBool.xml
--- phpdox-0.11.2/dependencies/php/classes/SplBool.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/SplBool.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,17 +1,17 @@
-
+
-
+
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/SplDoublyLinkedList.xml phpdox-0.12.0/dependencies/php/classes/SplDoublyLinkedList.xml
--- phpdox-0.11.2/dependencies/php/classes/SplDoublyLinkedList.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/SplDoublyLinkedList.xml 2019-03-13 09:34:17.000000000 +0000
@@ -23,7 +23,7 @@
-
+
@@ -41,7 +41,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/SplEnum.xml phpdox-0.12.0/dependencies/php/classes/SplEnum.xml
--- phpdox-0.11.2/dependencies/php/classes/SplEnum.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/SplEnum.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,14 +1,14 @@
-
+
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/SplFileInfo.xml phpdox-0.12.0/dependencies/php/classes/SplFileInfo.xml
--- phpdox-0.11.2/dependencies/php/classes/SplFileInfo.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/SplFileInfo.xml 2019-03-13 09:34:17.000000000 +0000
@@ -15,7 +15,7 @@
-
+ This method returns the base name of the file, directory, or link without path info.
diff -Nru phpdox-0.11.2/dependencies/php/classes/SplFileObject.xml phpdox-0.12.0/dependencies/php/classes/SplFileObject.xml
--- phpdox-0.11.2/dependencies/php/classes/SplFileObject.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/SplFileObject.xml 2019-03-13 09:34:17.000000000 +0000
@@ -21,6 +21,16 @@
+
+
+
+
+
+
+
+
+
+
@@ -47,7 +57,7 @@
-
+ Gets a line from the file which is in CSV format and returns an array containing the fields read.
@@ -219,25 +229,12 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
diff -Nru phpdox-0.11.2/dependencies/php/classes/SplFixedArray.xml phpdox-0.12.0/dependencies/php/classes/SplFixedArray.xml
--- phpdox-0.11.2/dependencies/php/classes/SplFixedArray.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/SplFixedArray.xml 2019-03-13 09:34:17.000000000 +0000
@@ -84,7 +84,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/SplHeap.xml phpdox-0.12.0/dependencies/php/classes/SplHeap.xml
--- phpdox-0.11.2/dependencies/php/classes/SplHeap.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/SplHeap.xml 2019-03-13 09:34:17.000000000 +0000
@@ -9,7 +9,7 @@
- Compare value1 with value2.
+ Compare value1 with value2.
@@ -17,7 +17,7 @@
-
+
@@ -29,20 +29,26 @@
-
+
-
+
+
+
+
+
+
+
-
+
@@ -60,7 +66,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/SplMaxHeap.xml phpdox-0.12.0/dependencies/php/classes/SplMaxHeap.xml
--- phpdox-0.11.2/dependencies/php/classes/SplMaxHeap.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/SplMaxHeap.xml 2019-03-13 09:34:17.000000000 +0000
@@ -3,7 +3,7 @@
-
+
@@ -42,6 +42,12 @@
+
+
+
+
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/SplMinHeap.xml phpdox-0.12.0/dependencies/php/classes/SplMinHeap.xml
--- phpdox-0.11.2/dependencies/php/classes/SplMinHeap.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/SplMinHeap.xml 2019-03-13 09:34:17.000000000 +0000
@@ -3,7 +3,7 @@
-
+
@@ -42,6 +42,12 @@
+
+
+
+
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/SplPriorityQueue.xml phpdox-0.12.0/dependencies/php/classes/SplPriorityQueue.xml
--- phpdox-0.11.2/dependencies/php/classes/SplPriorityQueue.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/SplPriorityQueue.xml 2019-03-13 09:34:17.000000000 +0000
@@ -9,7 +9,7 @@
-
+
@@ -17,7 +17,7 @@
-
+
@@ -29,21 +29,33 @@
-
+
+
+
+
+
+
+
-
+
+
+
+
+
+
+
-
+
@@ -61,7 +73,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/SplQueue.xml phpdox-0.12.0/dependencies/php/classes/SplQueue.xml
--- phpdox-0.11.2/dependencies/php/classes/SplQueue.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/SplQueue.xml 2019-03-13 09:34:17.000000000 +0000
@@ -15,7 +15,7 @@
- Enqueues value at the end of the queue.
+ Enqueues value at the end of the queue.
diff -Nru phpdox-0.11.2/dependencies/php/classes/SplTempFileObject.xml phpdox-0.12.0/dependencies/php/classes/SplTempFileObject.xml
--- phpdox-0.11.2/dependencies/php/classes/SplTempFileObject.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/SplTempFileObject.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,6 +1,26 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -206,12 +226,6 @@
-
-
-
-
-
-
diff -Nru phpdox-0.11.2/dependencies/php/classes/SplType.xml phpdox-0.12.0/dependencies/php/classes/SplType.xml
--- phpdox-0.11.2/dependencies/php/classes/SplType.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/SplType.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,6 +1,6 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/Spoofchecker.xml phpdox-0.12.0/dependencies/php/classes/Spoofchecker.xml
--- phpdox-0.11.2/dependencies/php/classes/Spoofchecker.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Spoofchecker.xml 2019-03-13 09:34:17.000000000 +0000
@@ -70,6 +70,6 @@
-
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/SQLite3Stmt.xml phpdox-0.12.0/dependencies/php/classes/SQLite3Stmt.xml
--- phpdox-0.11.2/dependencies/php/classes/SQLite3Stmt.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/SQLite3Stmt.xml 2019-03-13 09:34:17.000000000 +0000
@@ -11,7 +11,7 @@
-
+ Binds the value of a parameter to a statement variable.
@@ -20,7 +20,7 @@
-
+ Clears all current bound parameters (sets them to NULL).
@@ -36,6 +36,13 @@
+
+
+
+
+
+
+
@@ -44,7 +51,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/SQLite3.xml phpdox-0.12.0/dependencies/php/classes/SQLite3.xml
--- phpdox-0.11.2/dependencies/php/classes/SQLite3.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/SQLite3.xml 2019-03-13 09:34:17.000000000 +0000
@@ -111,15 +111,16 @@
-
+
-
+ Opens a stream resource to read or write a BLOB, which would be selected by:
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/SWFButton.xml phpdox-0.12.0/dependencies/php/classes/SWFButton.xml
--- phpdox-0.11.2/dependencies/php/classes/SWFButton.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/SWFButton.xml 2019-03-13 09:34:17.000000000 +0000
@@ -53,7 +53,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/SWFTextField.xml phpdox-0.12.0/dependencies/php/classes/SWFTextField.xml
--- phpdox-0.11.2/dependencies/php/classes/SWFTextField.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/SWFTextField.xml 2019-03-13 09:34:17.000000000 +0000
@@ -2,7 +2,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/SWFText.xml phpdox-0.12.0/dependencies/php/classes/SWFText.xml
--- phpdox-0.11.2/dependencies/php/classes/SWFText.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/SWFText.xml 2019-03-13 09:34:17.000000000 +0000
@@ -40,7 +40,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/Swoole_Async.xml phpdox-0.12.0/dependencies/php/classes/Swoole_Async.xml
--- phpdox-0.11.2/dependencies/php/classes/Swoole_Async.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Swoole_Async.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,56 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Swoole_Atomic.xml phpdox-0.12.0/dependencies/php/classes/Swoole_Atomic.xml
--- phpdox-0.11.2/dependencies/php/classes/Swoole_Atomic.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Swoole_Atomic.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Swoole_Buffer.xml phpdox-0.12.0/dependencies/php/classes/Swoole_Buffer.xml
--- phpdox-0.11.2/dependencies/php/classes/Swoole_Buffer.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Swoole_Buffer.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,66 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Swoole_Channel.xml phpdox-0.12.0/dependencies/php/classes/Swoole_Channel.xml
--- phpdox-0.11.2/dependencies/php/classes/Swoole_Channel.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Swoole_Channel.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,28 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Data can be any non-empty PHP variable, the variable will be serialized if it is not string type.
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Swoole_Client.xml phpdox-0.12.0/dependencies/php/classes/Swoole_Client.xml
--- phpdox-0.11.2/dependencies/php/classes/Swoole_Client.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Swoole_Client.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,167 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Swoole_Connection_Iterator.xml phpdox-0.12.0/dependencies/php/classes/Swoole_Connection_Iterator.xml
--- phpdox-0.11.2/dependencies/php/classes/Swoole_Connection_Iterator.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Swoole_Connection_Iterator.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,69 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Swoole_Coroutine.xml phpdox-0.12.0/dependencies/php/classes/Swoole_Coroutine.xml
--- phpdox-0.11.2/dependencies/php/classes/Swoole_Coroutine.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Swoole_Coroutine.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,49 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Swoole_Event.xml phpdox-0.12.0/dependencies/php/classes/Swoole_Event.xml
--- phpdox-0.11.2/dependencies/php/classes/Swoole_Event.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Swoole_Event.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,57 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Swoole_Exception.xml phpdox-0.12.0/dependencies/php/classes/Swoole_Exception.xml
--- phpdox-0.11.2/dependencies/php/classes/Swoole_Exception.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Swoole_Exception.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,32 @@
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Swoole_Http_Client.xml phpdox-0.12.0/dependencies/php/classes/Swoole_Http_Client.xml
--- phpdox-0.11.2/dependencies/php/classes/Swoole_Http_Client.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Swoole_Http_Client.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,139 @@
+
+
+
+ null
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Swoole_Http_Request.xml phpdox-0.12.0/dependencies/php/classes/Swoole_Http_Request.xml
--- phpdox-0.11.2/dependencies/php/classes/Swoole_Http_Request.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Swoole_Http_Request.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Swoole_Http_Response.xml phpdox-0.12.0/dependencies/php/classes/Swoole_Http_Response.xml
--- phpdox-0.11.2/dependencies/php/classes/Swoole_Http_Response.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Swoole_Http_Response.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,86 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Swoole_Http_Server.xml phpdox-0.12.0/dependencies/php/classes/Swoole_Http_Server.xml
--- phpdox-0.11.2/dependencies/php/classes/Swoole_Http_Server.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Swoole_Http_Server.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,301 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Swoole_Lock.xml phpdox-0.12.0/dependencies/php/classes/Swoole_Lock.xml
--- phpdox-0.11.2/dependencies/php/classes/Swoole_Lock.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Swoole_Lock.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,39 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Swoole_Mmap.xml phpdox-0.12.0/dependencies/php/classes/Swoole_Mmap.xml
--- phpdox-0.11.2/dependencies/php/classes/Swoole_Mmap.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Swoole_Mmap.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Swoole_MySQL_Exception.xml phpdox-0.12.0/dependencies/php/classes/Swoole_MySQL_Exception.xml
--- phpdox-0.11.2/dependencies/php/classes/Swoole_MySQL_Exception.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Swoole_MySQL_Exception.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,32 @@
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Swoole_MySQL.xml phpdox-0.12.0/dependencies/php/classes/Swoole_MySQL.xml
--- phpdox-0.11.2/dependencies/php/classes/Swoole_MySQL.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Swoole_MySQL.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,45 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Swoole_Process.xml phpdox-0.12.0/dependencies/php/classes/Swoole_Process.xml
--- phpdox-0.11.2/dependencies/php/classes/Swoole_Process.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Swoole_Process.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,134 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Swoole_Redis_Server.xml phpdox-0.12.0/dependencies/php/classes/Swoole_Redis_Server.xml
--- phpdox-0.11.2/dependencies/php/classes/Swoole_Redis_Server.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Swoole_Redis_Server.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,346 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Swoole_Serialize.xml phpdox-0.12.0/dependencies/php/classes/Swoole_Serialize.xml
--- phpdox-0.11.2/dependencies/php/classes/Swoole_Serialize.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Swoole_Serialize.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Swoole_Server.xml phpdox-0.12.0/dependencies/php/classes/Swoole_Server.xml
--- phpdox-0.11.2/dependencies/php/classes/Swoole_Server.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Swoole_Server.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,286 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Object oriented style (method):
+
+
+
+
+
+
+ Object oriented style (method):
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Swoole_Table.xml phpdox-0.12.0/dependencies/php/classes/Swoole_Table.xml
--- phpdox-0.11.2/dependencies/php/classes/Swoole_Table.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Swoole_Table.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,124 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Swoole_Timer.xml phpdox-0.12.0/dependencies/php/classes/Swoole_Timer.xml
--- phpdox-0.11.2/dependencies/php/classes/Swoole_Timer.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Swoole_Timer.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Swoole_WebSocket_Frame.xml phpdox-0.12.0/dependencies/php/classes/Swoole_WebSocket_Frame.xml
--- phpdox-0.11.2/dependencies/php/classes/Swoole_WebSocket_Frame.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Swoole_WebSocket_Frame.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,2 @@
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Swoole_WebSocket_Server.xml phpdox-0.12.0/dependencies/php/classes/Swoole_WebSocket_Server.xml
--- phpdox-0.11.2/dependencies/php/classes/Swoole_WebSocket_Server.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Swoole_WebSocket_Server.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,60 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/SyncEvent.xml phpdox-0.12.0/dependencies/php/classes/SyncEvent.xml
--- phpdox-0.11.2/dependencies/php/classes/SyncEvent.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/SyncEvent.xml 2019-03-13 09:34:17.000000000 +0000
@@ -26,6 +26,6 @@
-
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/SyncMutex.xml phpdox-0.12.0/dependencies/php/classes/SyncMutex.xml
--- phpdox-0.11.2/dependencies/php/classes/SyncMutex.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/SyncMutex.xml 2019-03-13 09:34:17.000000000 +0000
@@ -12,7 +12,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/SyncReaderWriter.xml phpdox-0.12.0/dependencies/php/classes/SyncReaderWriter.xml
--- phpdox-0.11.2/dependencies/php/classes/SyncReaderWriter.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/SyncReaderWriter.xml 2019-03-13 09:34:17.000000000 +0000
@@ -13,7 +13,7 @@
-
+
@@ -26,7 +26,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/SyncSemaphore.xml phpdox-0.12.0/dependencies/php/classes/SyncSemaphore.xml
--- phpdox-0.11.2/dependencies/php/classes/SyncSemaphore.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/SyncSemaphore.xml 2019-03-13 09:34:17.000000000 +0000
@@ -6,7 +6,7 @@
-
+
@@ -14,13 +14,13 @@
-
+
-
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/SyncSharedMemory.xml phpdox-0.12.0/dependencies/php/classes/SyncSharedMemory.xml
--- phpdox-0.11.2/dependencies/php/classes/SyncSharedMemory.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/SyncSharedMemory.xml 2019-03-13 09:34:17.000000000 +0000
@@ -6,7 +6,7 @@
-
+
@@ -19,8 +19,8 @@
-
-
+
+
@@ -34,6 +34,6 @@
-
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Threaded.xml phpdox-0.12.0/dependencies/php/classes/Threaded.xml
--- phpdox-0.11.2/dependencies/php/classes/Threaded.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Threaded.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,18 +1,18 @@
-
+
-
-
+
+
-
+
@@ -40,31 +40,31 @@
-
+
-
+
-
+
-
+
-
+
@@ -72,13 +72,19 @@
-
+
+
+
+
+
+
+
-
+
@@ -104,14 +110,14 @@
-
+
-
+
-
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Thread.xml phpdox-0.12.0/dependencies/php/classes/Thread.xml
--- phpdox-0.11.2/dependencies/php/classes/Thread.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Thread.xml 2019-03-13 09:34:17.000000000 +0000
@@ -10,7 +10,7 @@
-
+
@@ -22,13 +22,13 @@
-
+
-
+
@@ -40,19 +40,19 @@
-
+
-
+
-
+
@@ -64,22 +64,22 @@
-
+
-
+
-
-
+
+
-
+
@@ -107,31 +107,31 @@
-
+
-
+
-
+
-
+
-
+
@@ -139,13 +139,19 @@
-
+
+
+
+
+
+
+
-
+
@@ -171,14 +177,14 @@
-
+
-
+
-
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/tidyNode.xml phpdox-0.12.0/dependencies/php/classes/tidyNode.xml
--- phpdox-0.11.2/dependencies/php/classes/tidyNode.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/tidyNode.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,117 +1,123 @@
-
+
null
-
+
null
-
+
null
-
+
-
+
null
-
+
null
-
+
null
-
+
null
-
+
-
+
null
-
+
null
-
+
+
+
+
+
+
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/tidy.xml phpdox-0.12.0/dependencies/php/classes/tidy.xml
--- phpdox-0.11.2/dependencies/php/classes/tidy.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/tidy.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,25 +1,25 @@
-
+
null
Object oriented style (property):
-
+
Object oriented style
-
+
Object oriented style
-
+
@@ -29,75 +29,75 @@
-
+
Object oriented style
-
+
Object oriented style
-
+
Object oriented style
-
+
Object oriented style
-
+
Object oriented style
-
+
Object oriented style
-
+
Object oriented style
-
+
Object oriented style
-
+
Object oriented style
-
+
Object oriented style
-
+
Object oriented style
-
+
Object oriented style
@@ -107,7 +107,7 @@
-
+
Object oriented style
@@ -116,7 +116,7 @@
-
+
Object oriented style
@@ -126,7 +126,7 @@
-
+
Object oriented style
@@ -135,7 +135,7 @@
-
+
Object oriented style
diff -Nru phpdox-0.11.2/dependencies/php/classes/TypeError.xml phpdox-0.12.0/dependencies/php/classes/TypeError.xml
--- phpdox-0.11.2/dependencies/php/classes/TypeError.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/TypeError.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,6 +1,34 @@
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/UConverter.xml phpdox-0.12.0/dependencies/php/classes/UConverter.xml
--- phpdox-0.11.2/dependencies/php/classes/UConverter.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UConverter.xml 2019-03-13 09:34:17.000000000 +0000
@@ -226,17 +226,17 @@
-
+
-
+
-
+
@@ -253,13 +253,13 @@
-
+
-
+
@@ -277,7 +277,7 @@
-
+
@@ -297,7 +297,7 @@
-
+
@@ -325,10 +325,10 @@
-
+
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Area.xml phpdox-0.12.0/dependencies/php/classes/UI_Area.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Area.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Area.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
@@ -47,8 +47,8 @@
-
-
+
+
@@ -57,7 +57,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Controls_Box.xml phpdox-0.12.0/dependencies/php/classes/UI_Controls_Box.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Controls_Box.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Controls_Box.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
@@ -22,27 +22,27 @@
-
+
-
+
-
+
-
+
-
+
-
+
@@ -56,7 +56,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Controls_Button.xml phpdox-0.12.0/dependencies/php/classes/UI_Controls_Button.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Controls_Button.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Controls_Button.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Controls_Check.xml phpdox-0.12.0/dependencies/php/classes/UI_Controls_Check.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Controls_Check.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Controls_Check.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
@@ -31,7 +31,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Controls_ColorButton.xml phpdox-0.12.0/dependencies/php/classes/UI_Controls_ColorButton.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Controls_ColorButton.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Controls_ColorButton.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
@@ -25,7 +25,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Controls_Combo.xml phpdox-0.12.0/dependencies/php/classes/UI_Controls_Combo.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Controls_Combo.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Controls_Combo.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
@@ -11,7 +11,7 @@
-
+
@@ -25,7 +25,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Controls_EditableCombo.xml phpdox-0.12.0/dependencies/php/classes/UI_Controls_EditableCombo.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Controls_EditableCombo.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Controls_EditableCombo.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Controls_Entry.xml phpdox-0.12.0/dependencies/php/classes/UI_Controls_Entry.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Controls_Entry.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Controls_Entry.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
@@ -21,7 +21,7 @@
-
+
@@ -46,7 +46,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Controls_Form.xml phpdox-0.12.0/dependencies/php/classes/UI_Controls_Form.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Controls_Form.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Controls_Form.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
null
@@ -10,18 +10,18 @@
-
+
-
+
-
+
-
+
@@ -34,7 +34,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Controls_Grid.xml phpdox-0.12.0/dependencies/php/classes/UI_Controls_Grid.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Controls_Grid.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Controls_Grid.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
@@ -53,14 +53,14 @@
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
@@ -73,7 +73,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Controls_Group.xml phpdox-0.12.0/dependencies/php/classes/UI_Controls_Group.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Controls_Group.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Controls_Group.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
null
@@ -38,7 +38,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Controls_Label.xml phpdox-0.12.0/dependencies/php/classes/UI_Controls_Label.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Controls_Label.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Controls_Label.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Controls_MultilineEntry.xml phpdox-0.12.0/dependencies/php/classes/UI_Controls_MultilineEntry.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Controls_MultilineEntry.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Controls_MultilineEntry.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
@@ -16,7 +16,7 @@
-
+
@@ -48,7 +48,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Controls_Picker.xml phpdox-0.12.0/dependencies/php/classes/UI_Controls_Picker.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Controls_Picker.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Controls_Picker.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
@@ -21,7 +21,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Controls_Progress.xml phpdox-0.12.0/dependencies/php/classes/UI_Controls_Progress.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Controls_Progress.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Controls_Progress.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
@@ -12,7 +12,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Controls_Radio.xml phpdox-0.12.0/dependencies/php/classes/UI_Controls_Radio.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Controls_Radio.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Controls_Radio.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
@@ -11,7 +11,7 @@
-
+
@@ -25,7 +25,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Controls_Separator.xml phpdox-0.12.0/dependencies/php/classes/UI_Controls_Separator.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Controls_Separator.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Controls_Separator.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
@@ -16,7 +16,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Controls_Slider.xml phpdox-0.12.0/dependencies/php/classes/UI_Controls_Slider.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Controls_Slider.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Controls_Slider.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,18 +1,18 @@
-
+
-
-
+
+
-
+
@@ -26,7 +26,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Controls_Spin.xml phpdox-0.12.0/dependencies/php/classes/UI_Controls_Spin.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Controls_Spin.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Controls_Spin.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,13 +1,13 @@
-
+
-
-
+
+
@@ -26,7 +26,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Controls_Tab.xml phpdox-0.12.0/dependencies/php/classes/UI_Controls_Tab.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Controls_Tab.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Controls_Tab.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
null
@@ -10,7 +10,7 @@
-
+
@@ -18,16 +18,16 @@
-
+
-
+
-
+
@@ -35,13 +35,13 @@
-
+
-
+
@@ -49,8 +49,8 @@
-
-
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Control.xml phpdox-0.12.0/dependencies/php/classes/UI_Control.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Control.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Control.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Draw_Brush_Gradient.xml phpdox-0.12.0/dependencies/php/classes/UI_Draw_Brush_Gradient.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Draw_Brush_Gradient.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Draw_Brush_Gradient.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,10 +1,10 @@
-
+
-
+
@@ -12,35 +12,35 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
@@ -60,6 +60,6 @@
-
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Draw_Brush_LinearGradient.xml phpdox-0.12.0/dependencies/php/classes/UI_Draw_Brush_LinearGradient.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Draw_Brush_LinearGradient.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Draw_Brush_LinearGradient.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
@@ -12,7 +12,7 @@
-
+
@@ -20,34 +20,34 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Draw_Brush_RadialGradient.xml phpdox-0.12.0/dependencies/php/classes/UI_Draw_Brush_RadialGradient.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Draw_Brush_RadialGradient.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Draw_Brush_RadialGradient.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
@@ -13,7 +13,7 @@
-
+
@@ -21,34 +21,34 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Draw_Brush.xml phpdox-0.12.0/dependencies/php/classes/UI_Draw_Brush.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Draw_Brush.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Draw_Brush.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
@@ -12,7 +12,7 @@
-
+
@@ -32,6 +32,6 @@
-
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Draw_Color.xml phpdox-0.12.0/dependencies/php/classes/UI_Draw_Color.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Draw_Color.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Draw_Color.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
@@ -56,21 +56,21 @@
-
+
-
+
-
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Draw_Line_Cap.xml phpdox-0.12.0/dependencies/php/classes/UI_Draw_Line_Cap.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Draw_Line_Cap.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Draw_Line_Cap.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Draw_Line_Join.xml phpdox-0.12.0/dependencies/php/classes/UI_Draw_Line_Join.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Draw_Line_Join.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Draw_Line_Join.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Draw_Matrix.xml phpdox-0.12.0/dependencies/php/classes/UI_Draw_Matrix.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Draw_Matrix.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Draw_Matrix.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Draw_Path.xml phpdox-0.12.0/dependencies/php/classes/UI_Draw_Path.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Draw_Path.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Draw_Path.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
@@ -15,7 +15,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Draw_Pen.xml phpdox-0.12.0/dependencies/php/classes/UI_Draw_Pen.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Draw_Pen.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Draw_Pen.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
@@ -29,7 +29,7 @@
-
+
@@ -67,7 +67,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Draw_Stroke.xml phpdox-0.12.0/dependencies/php/classes/UI_Draw_Stroke.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Draw_Stroke.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Draw_Stroke.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,25 +1,25 @@
-
+
-
-
+
+
-
+
-
+
@@ -39,14 +39,14 @@
-
+
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Draw_Text_Font_Descriptor.xml phpdox-0.12.0/dependencies/php/classes/UI_Draw_Text_Font_Descriptor.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Draw_Text_Font_Descriptor.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Draw_Text_Font_Descriptor.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
@@ -7,9 +7,9 @@
-
-
-
+
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Draw_Text_Font_Italic.xml phpdox-0.12.0/dependencies/php/classes/UI_Draw_Text_Font_Italic.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Draw_Text_Font_Italic.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Draw_Text_Font_Italic.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Draw_Text_Font_Stretch.xml phpdox-0.12.0/dependencies/php/classes/UI_Draw_Text_Font_Stretch.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Draw_Text_Font_Stretch.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Draw_Text_Font_Stretch.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Draw_Text_Font_Weight.xml phpdox-0.12.0/dependencies/php/classes/UI_Draw_Text_Font_Weight.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Draw_Text_Font_Weight.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Draw_Text_Font_Weight.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Draw_Text_Font.xml phpdox-0.12.0/dependencies/php/classes/UI_Draw_Text_Font.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Draw_Text_Font.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Draw_Text_Font.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Draw_Text_Layout.xml phpdox-0.12.0/dependencies/php/classes/UI_Draw_Text_Layout.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Draw_Text_Layout.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Draw_Text_Layout.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
@@ -15,17 +15,17 @@
-
-
+
+
-
-
-
+
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Exception_InvalidArgumentException.xml phpdox-0.12.0/dependencies/php/classes/UI_Exception_InvalidArgumentException.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Exception_InvalidArgumentException.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Exception_InvalidArgumentException.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
null
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Exception_RuntimeException.xml phpdox-0.12.0/dependencies/php/classes/UI_Exception_RuntimeException.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Exception_RuntimeException.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Exception_RuntimeException.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
null
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Executor.xml phpdox-0.12.0/dependencies/php/classes/UI_Executor.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Executor.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Executor.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
@@ -11,15 +11,15 @@
-
+
-
-
+
+
@@ -38,14 +38,14 @@
-
+
-
-
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Key.xml phpdox-0.12.0/dependencies/php/classes/UI_Key.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Key.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Key.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_MenuItem.xml phpdox-0.12.0/dependencies/php/classes/UI_MenuItem.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_MenuItem.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_MenuItem.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
@@ -29,6 +29,6 @@
-
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Menu.xml phpdox-0.12.0/dependencies/php/classes/UI_Menu.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Menu.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Menu.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Point.xml phpdox-0.12.0/dependencies/php/classes/UI_Point.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Point.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Point.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
null
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Size.xml phpdox-0.12.0/dependencies/php/classes/UI_Size.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Size.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Size.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
null
diff -Nru phpdox-0.11.2/dependencies/php/classes/UI_Window.xml phpdox-0.12.0/dependencies/php/classes/UI_Window.xml
--- phpdox-0.11.2/dependencies/php/classes/UI_Window.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/UI_Window.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
null
@@ -14,7 +14,7 @@
-
+
@@ -92,21 +92,21 @@
-
+
-
+
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/Volatile.xml phpdox-0.12.0/dependencies/php/classes/Volatile.xml
--- phpdox-0.11.2/dependencies/php/classes/Volatile.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Volatile.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,123 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Vtiful_Kernel_Excel.xml phpdox-0.12.0/dependencies/php/classes/Vtiful_Kernel_Excel.xml
--- phpdox-0.11.2/dependencies/php/classes/Vtiful_Kernel_Excel.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Vtiful_Kernel_Excel.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,120 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Vtiful_Kernel_Format.xml phpdox-0.12.0/dependencies/php/classes/Vtiful_Kernel_Format.xml
--- phpdox-0.11.2/dependencies/php/classes/Vtiful_Kernel_Format.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Vtiful_Kernel_Format.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,113 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/WeakMap.xml phpdox-0.12.0/dependencies/php/classes/WeakMap.xml
--- phpdox-0.11.2/dependencies/php/classes/WeakMap.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/WeakMap.xml 2019-03-13 09:34:17.000000000 +0000
@@ -21,7 +21,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/wkhtmltox_Image_Converter.xml phpdox-0.12.0/dependencies/php/classes/wkhtmltox_Image_Converter.xml
--- phpdox-0.11.2/dependencies/php/classes/wkhtmltox_Image_Converter.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/wkhtmltox_Image_Converter.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,23 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/wkhtmltox_PDF_Converter.xml phpdox-0.12.0/dependencies/php/classes/wkhtmltox_PDF_Converter.xml
--- phpdox-0.11.2/dependencies/php/classes/wkhtmltox_PDF_Converter.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/wkhtmltox_PDF_Converter.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,29 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/wkhtmltox_PDF_Object.xml phpdox-0.12.0/dependencies/php/classes/wkhtmltox_PDF_Object.xml
--- phpdox-0.11.2/dependencies/php/classes/wkhtmltox_PDF_Object.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/wkhtmltox_PDF_Object.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Worker.xml phpdox-0.12.0/dependencies/php/classes/Worker.xml
--- phpdox-0.11.2/dependencies/php/classes/Worker.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Worker.xml 2019-03-13 09:34:17.000000000 +0000
@@ -23,7 +23,7 @@
-
+
@@ -54,7 +54,7 @@
-
+
@@ -66,13 +66,13 @@
-
+
-
+
@@ -84,19 +84,19 @@
-
+
-
+
-
+
@@ -108,8 +108,8 @@
-
+
-
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/XMLDiff_Base.xml phpdox-0.12.0/dependencies/php/classes/XMLDiff_Base.xml
--- phpdox-0.11.2/dependencies/php/classes/XMLDiff_Base.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/XMLDiff_Base.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/XMLDiff_DOM.xml phpdox-0.12.0/dependencies/php/classes/XMLDiff_DOM.xml
--- phpdox-0.11.2/dependencies/php/classes/XMLDiff_DOM.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/XMLDiff_DOM.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/XMLDiff_File.xml phpdox-0.12.0/dependencies/php/classes/XMLDiff_File.xml
--- phpdox-0.11.2/dependencies/php/classes/XMLDiff_File.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/XMLDiff_File.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/XMLDiff_Memory.xml phpdox-0.12.0/dependencies/php/classes/XMLDiff_Memory.xml
--- phpdox-0.11.2/dependencies/php/classes/XMLDiff_Memory.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/XMLDiff_Memory.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/XMLReader.xml phpdox-0.12.0/dependencies/php/classes/XMLReader.xml
--- phpdox-0.11.2/dependencies/php/classes/XMLReader.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/XMLReader.xml 2019-03-13 09:34:17.000000000 +0000
@@ -325,13 +325,13 @@
-
+
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/XSLTProcessor.xml phpdox-0.12.0/dependencies/php/classes/XSLTProcessor.xml
--- phpdox-0.11.2/dependencies/php/classes/XSLTProcessor.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/XSLTProcessor.xml 2019-03-13 09:34:17.000000000 +0000
@@ -80,7 +80,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/Yaconf.xml phpdox-0.12.0/dependencies/php/classes/Yaconf.xml
--- phpdox-0.11.2/dependencies/php/classes/Yaconf.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Yaconf.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,18 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Yaf_Action_Abstract.xml phpdox-0.12.0/dependencies/php/classes/Yaf_Action_Abstract.xml
--- phpdox-0.11.2/dependencies/php/classes/Yaf_Action_Abstract.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Yaf_Action_Abstract.xml 2019-03-13 09:34:17.000000000 +0000
@@ -89,7 +89,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/Yaf_Application.xml phpdox-0.12.0/dependencies/php/classes/Yaf_Application.xml
--- phpdox-0.11.2/dependencies/php/classes/Yaf_Application.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Yaf_Application.xml 2019-03-13 09:34:17.000000000 +0000
@@ -39,7 +39,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/Yaf_Config_Ini.xml phpdox-0.12.0/dependencies/php/classes/Yaf_Config_Ini.xml
--- phpdox-0.11.2/dependencies/php/classes/Yaf_Config_Ini.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Yaf_Config_Ini.xml 2019-03-13 09:34:17.000000000 +0000
@@ -11,39 +11,39 @@
-
+
-
+
-
+
-
+
-
+
-
+
@@ -98,7 +98,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/Yaf_Controller_Abstract.xml phpdox-0.12.0/dependencies/php/classes/Yaf_Controller_Abstract.xml
--- phpdox-0.11.2/dependencies/php/classes/Yaf_Controller_Abstract.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Yaf_Controller_Abstract.xml 2019-03-13 09:34:17.000000000 +0000
@@ -64,7 +64,7 @@
- forward current execution process to other action. this method doesn't switch to the destination action immediately, it will take place after current flow finish.
+ forward current execution process to other action. this method doesn't switch to the destination action immediately, it will take place after current flow finish.
@@ -110,7 +110,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/Yaf_Dispatcher.xml phpdox-0.12.0/dependencies/php/classes/Yaf_Dispatcher.xml
--- phpdox-0.11.2/dependencies/php/classes/Yaf_Dispatcher.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Yaf_Dispatcher.xml 2019-03-13 09:34:17.000000000 +0000
@@ -107,7 +107,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/Yaf_Loader.xml phpdox-0.12.0/dependencies/php/classes/Yaf_Loader.xml
--- phpdox-0.11.2/dependencies/php/classes/Yaf_Loader.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Yaf_Loader.xml 2019-03-13 09:34:17.000000000 +0000
@@ -56,7 +56,7 @@
-
+
@@ -81,7 +81,7 @@
- Register local class prefix name, Yaf_Loader search classes in two library directories, the one is configured via application.library.directory(in application.ini) which is called local libraray directory; the other is configured via yaf.library (in php.ini) which is callled global library directory, since it can be shared by many applications in the same server.
+ Register local class prefix name, Yaf_Loader search classes in two library directories, the one is configured via application.library.directory(in application.ini) which is called local libraray directory; the other is configured via yaf.library (in php.ini) which is callled global library directory, since it can be shared by many applications in the same server.
diff -Nru phpdox-0.11.2/dependencies/php/classes/Yaf_Plugin_Abstract.xml phpdox-0.12.0/dependencies/php/classes/Yaf_Plugin_Abstract.xml
--- phpdox-0.11.2/dependencies/php/classes/Yaf_Plugin_Abstract.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Yaf_Plugin_Abstract.xml 2019-03-13 09:34:17.000000000 +0000
@@ -10,7 +10,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/Yaf_Request_Abstract.xml phpdox-0.12.0/dependencies/php/classes/Yaf_Request_Abstract.xml
--- phpdox-0.11.2/dependencies/php/classes/Yaf_Request_Abstract.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Yaf_Request_Abstract.xml 2019-03-13 09:34:17.000000000 +0000
@@ -110,14 +110,14 @@
-
+
-
-
+
+
@@ -128,16 +128,16 @@
-
-
+
+
-
-
+
+
@@ -156,56 +156,56 @@
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
@@ -217,7 +217,7 @@
- Set base URI, base URI is used when doing routing, in routing phase request URI is used to route a request, while base URI is used to skip the leadding part(base URI) of request URI. That is, if comes a request with request URI a/b/c, then if you set base URI to "a/b", only "/c" will be used in routing phase. generally, you don't need to set this, Yaf will determine it automatically.
+ Set base URI, base URI is used when doing routing, in routing phase request URI is used to route a request, while base URI is used to skip the leadding part(base URI) of request URI. That is, if comes a request with request URI a/b/c, then if you set base URI to "a/b", only "/c" will be used in routing phase. generally, you don't need to set this, Yaf will determine it automatically.
@@ -244,8 +244,8 @@
-
-
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/Yaf_Request_Http.xml phpdox-0.12.0/dependencies/php/classes/Yaf_Request_Http.xml
--- phpdox-0.11.2/dependencies/php/classes/Yaf_Request_Http.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Yaf_Request_Http.xml 2019-03-13 09:34:17.000000000 +0000
@@ -3,7 +3,7 @@
-
+
@@ -53,6 +53,12 @@
+
+
+
+
+
+
@@ -61,7 +67,7 @@
- Check the request whether it is a Ajax Request. This method depends on the request header: HTTP_X_REQUESTED_WITH, some Javascript library doesn't set this header while doing Ajax request
+ Check the request whether it is a Ajax Request. This method depends on the request header: HTTP_X_REQUESTED_WITH, some Javascript library doesn't set this header while doing Ajax request
@@ -106,7 +112,7 @@
-
+
@@ -118,7 +124,7 @@
-
+
@@ -126,7 +132,7 @@
-
+
@@ -146,55 +152,55 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
@@ -234,7 +240,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/Yaf_Request_Simple.xml phpdox-0.12.0/dependencies/php/classes/Yaf_Request_Simple.xml
--- phpdox-0.11.2/dependencies/php/classes/Yaf_Request_Simple.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Yaf_Request_Simple.xml 2019-03-13 09:34:17.000000000 +0000
@@ -66,7 +66,7 @@
-
+
@@ -111,7 +111,7 @@
-
+
@@ -123,7 +123,7 @@
-
+
@@ -131,7 +131,7 @@
-
+
@@ -151,55 +151,55 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
@@ -239,7 +239,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/Yaf_Response_Abstract.xml phpdox-0.12.0/dependencies/php/classes/Yaf_Response_Abstract.xml
--- phpdox-0.11.2/dependencies/php/classes/Yaf_Response_Abstract.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Yaf_Response_Abstract.xml 2019-03-13 09:34:17.000000000 +0000
@@ -25,7 +25,7 @@
-
+
@@ -33,14 +33,14 @@
-
+
-
+
@@ -85,7 +85,7 @@
-
+
@@ -105,9 +105,12 @@
-
-
+
+
+
+
+
@@ -117,8 +120,8 @@
-
-
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Yar_Client_Exception.xml phpdox-0.12.0/dependencies/php/classes/Yar_Client_Exception.xml
--- phpdox-0.11.2/dependencies/php/classes/Yar_Client_Exception.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Yar_Client_Exception.xml 2019-03-13 09:34:17.000000000 +0000
@@ -3,8 +3,8 @@
-
-
+
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/Yar_Client.xml phpdox-0.12.0/dependencies/php/classes/Yar_Client.xml
--- phpdox-0.11.2/dependencies/php/classes/Yar_Client.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Yar_Client.xml 2019-03-13 09:34:17.000000000 +0000
@@ -38,13 +38,14 @@
+
-
+
-
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Yar_Concurrent_Client.xml phpdox-0.12.0/dependencies/php/classes/Yar_Concurrent_Client.xml
--- phpdox-0.11.2/dependencies/php/classes/Yar_Concurrent_Client.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Yar_Concurrent_Client.xml 2019-03-13 09:34:17.000000000 +0000
@@ -25,13 +25,15 @@
-
+
+
+
-
+
@@ -39,7 +41,7 @@
-
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Yar_Server_Exception.xml phpdox-0.12.0/dependencies/php/classes/Yar_Server_Exception.xml
--- phpdox-0.11.2/dependencies/php/classes/Yar_Server_Exception.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Yar_Server_Exception.xml 2019-03-13 09:34:17.000000000 +0000
@@ -9,7 +9,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/Yar_Server.xml phpdox-0.12.0/dependencies/php/classes/Yar_Server.xml
--- phpdox-0.11.2/dependencies/php/classes/Yar_Server.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Yar_Server.xml 2019-03-13 09:34:17.000000000 +0000
@@ -16,7 +16,7 @@
Start a RPC HTTP server, and ready for accpet RPC requests. Usual RPC calls will be issued as HTTP POST requests. If a HTTP GET request is issued to the uri, the service information (commented section above) will be printed on the page
-
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/ZipArchive.xml phpdox-0.12.0/dependencies/php/classes/ZipArchive.xml
--- phpdox-0.11.2/dependencies/php/classes/ZipArchive.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/ZipArchive.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,6 @@
+
null
@@ -84,16 +85,22 @@
+
+
+
+
+
+
-
+
-
+
@@ -183,7 +190,7 @@
-
+
@@ -308,7 +315,7 @@
-
+
@@ -316,7 +323,7 @@
-
+
@@ -330,7 +337,7 @@
-
+
@@ -343,7 +350,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/ZMQContext.xml phpdox-0.12.0/dependencies/php/classes/ZMQContext.xml
--- phpdox-0.11.2/dependencies/php/classes/ZMQContext.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/ZMQContext.xml 2019-03-13 09:34:17.000000000 +0000
@@ -5,8 +5,8 @@
-
-
+
+
@@ -20,14 +20,14 @@
-
+
-
+
@@ -35,7 +35,7 @@
-
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/ZMQDevice.xml phpdox-0.12.0/dependencies/php/classes/ZMQDevice.xml
--- phpdox-0.11.2/dependencies/php/classes/ZMQDevice.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/ZMQDevice.xml 2019-03-13 09:34:17.000000000 +0000
@@ -33,7 +33,7 @@
-
+
@@ -41,7 +41,7 @@
-
+
@@ -49,7 +49,7 @@
-
+
@@ -57,6 +57,6 @@
-
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/ZMQPoll.xml phpdox-0.12.0/dependencies/php/classes/ZMQPoll.xml
--- phpdox-0.11.2/dependencies/php/classes/ZMQPoll.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/ZMQPoll.xml 2019-03-13 09:34:17.000000000 +0000
@@ -6,7 +6,7 @@
-
+
@@ -17,7 +17,7 @@
-
+
@@ -29,16 +29,16 @@
-
+
-
+
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/ZMQSocket.xml phpdox-0.12.0/dependencies/php/classes/ZMQSocket.xml
--- phpdox-0.11.2/dependencies/php/classes/ZMQSocket.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/ZMQSocket.xml 2019-03-13 09:34:17.000000000 +0000
@@ -6,7 +6,7 @@
-
+
@@ -14,7 +14,7 @@
-
+
@@ -48,7 +48,7 @@
-
+
@@ -61,7 +61,7 @@
-
+
@@ -69,14 +69,14 @@
-
+
-
+
-
+
@@ -84,7 +84,7 @@
-
+
@@ -92,14 +92,14 @@
-
+
-
+
diff -Nru phpdox-0.11.2/dependencies/php/classes/ZookeeperAuthenticationException.xml phpdox-0.12.0/dependencies/php/classes/ZookeeperAuthenticationException.xml
--- phpdox-0.11.2/dependencies/php/classes/ZookeeperAuthenticationException.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/ZookeeperAuthenticationException.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,86 @@
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/ZookeeperConfig.xml phpdox-0.12.0/dependencies/php/classes/ZookeeperConfig.xml
--- phpdox-0.11.2/dependencies/php/classes/ZookeeperConfig.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/ZookeeperConfig.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/ZookeeperConnectionException.xml phpdox-0.12.0/dependencies/php/classes/ZookeeperConnectionException.xml
--- phpdox-0.11.2/dependencies/php/classes/ZookeeperConnectionException.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/ZookeeperConnectionException.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,86 @@
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/ZookeeperException.xml phpdox-0.12.0/dependencies/php/classes/ZookeeperException.xml
--- phpdox-0.11.2/dependencies/php/classes/ZookeeperException.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/ZookeeperException.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,86 @@
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/ZookeeperMarshallingException.xml phpdox-0.12.0/dependencies/php/classes/ZookeeperMarshallingException.xml
--- phpdox-0.11.2/dependencies/php/classes/ZookeeperMarshallingException.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/ZookeeperMarshallingException.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,86 @@
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/ZookeeperNoNodeException.xml phpdox-0.12.0/dependencies/php/classes/ZookeeperNoNodeException.xml
--- phpdox-0.11.2/dependencies/php/classes/ZookeeperNoNodeException.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/ZookeeperNoNodeException.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,86 @@
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/ZookeeperOperationTimeoutException.xml phpdox-0.12.0/dependencies/php/classes/ZookeeperOperationTimeoutException.xml
--- phpdox-0.11.2/dependencies/php/classes/ZookeeperOperationTimeoutException.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/ZookeeperOperationTimeoutException.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,86 @@
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/ZookeeperSessionException.xml phpdox-0.12.0/dependencies/php/classes/ZookeeperSessionException.xml
--- phpdox-0.11.2/dependencies/php/classes/ZookeeperSessionException.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/ZookeeperSessionException.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,86 @@
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+ null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/classes/Zookeeper.xml phpdox-0.12.0/dependencies/php/classes/Zookeeper.xml
--- phpdox-0.11.2/dependencies/php/classes/Zookeeper.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/classes/Zookeeper.xml 2019-03-13 09:34:17.000000000 +0000
@@ -2,7 +2,7 @@
-
+
@@ -11,16 +11,22 @@
-
+
+
+
+
+
+
+
-
+
@@ -29,7 +35,7 @@
-
+
@@ -39,7 +45,7 @@
-
+
@@ -47,7 +53,7 @@
-
+
@@ -55,7 +61,7 @@
-
+
@@ -65,38 +71,52 @@
-
+
+
+
+
+
+
+
+
+
-
+
+
+
+
+
+
+
-
+
-
+
-
+
-
+
@@ -106,7 +126,7 @@
-
+
@@ -115,28 +135,28 @@
-
+
-
+
-
+
-
+
@@ -181,6 +201,16 @@
+
+
+
+
+
+
+
+
+
+
@@ -225,5 +255,185 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/index.xml phpdox-0.12.0/dependencies/php/index.xml
--- phpdox-0.11.2/dependencies/php/index.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/index.xml 2019-03-13 09:34:17.000000000 +0000
@@ -4,9 +4,11 @@
+
+
@@ -29,6 +31,7 @@
+
@@ -68,40 +71,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -125,18 +94,16 @@
-
-
-
-
+
+
@@ -248,15 +215,18 @@
+
+
+
@@ -352,6 +322,7 @@
+
@@ -393,6 +364,14 @@
+
+
+
+
+
+
+
+
@@ -417,25 +396,19 @@
-
-
-
-
-
-
-
-
+
+
@@ -478,59 +451,8 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -539,10 +461,6 @@
-
-
-
-
@@ -556,9 +474,312 @@
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/ArrayAccess.xml phpdox-0.12.0/dependencies/php/interfaces/ArrayAccess.xml
--- phpdox-0.11.2/dependencies/php/interfaces/ArrayAccess.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/ArrayAccess.xml 2019-03-13 09:34:17.000000000 +0000
@@ -3,7 +3,7 @@
Whether or not an offset exists.
-
+
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/Collectable.xml phpdox-0.12.0/dependencies/php/interfaces/Collectable.xml
--- phpdox-0.11.2/dependencies/php/interfaces/Collectable.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/Collectable.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,6 +1,5 @@
-
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/CommonMark_Interfaces_IVisitable.xml phpdox-0.12.0/dependencies/php/interfaces/CommonMark_Interfaces_IVisitable.xml
--- phpdox-0.11.2/dependencies/php/interfaces/CommonMark_Interfaces_IVisitable.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/CommonMark_Interfaces_IVisitable.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/DateTimeInterface.xml phpdox-0.12.0/dependencies/php/interfaces/DateTimeInterface.xml
--- phpdox-0.11.2/dependencies/php/interfaces/DateTimeInterface.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/DateTimeInterface.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,65 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Object oriented style
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/Ds_Collection.xml phpdox-0.12.0/dependencies/php/interfaces/Ds_Collection.xml
--- phpdox-0.11.2/dependencies/php/interfaces/Ds_Collection.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/Ds_Collection.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,15 +1,15 @@
-
+
-
+
-
+
@@ -21,7 +21,7 @@
- Converts the collection to an array.
+ Converts the collection to an array.
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/Ds_Hashable.xml phpdox-0.12.0/dependencies/php/interfaces/Ds_Hashable.xml
--- phpdox-0.11.2/dependencies/php/interfaces/Ds_Hashable.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/Ds_Hashable.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,15 +1,15 @@
-
+
- Determines whether another object is equal to the current instance.
+ Determines whether another object is equal to the current instance.
- Returns a scalar value to be used as the hash value of the objects.
+ Returns a scalar value to be used as the hash value of the objects.
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/Ds_Sequence.xml phpdox-0.12.0/dependencies/php/interfaces/Ds_Sequence.xml
--- phpdox-0.11.2/dependencies/php/interfaces/Ds_Sequence.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/Ds_Sequence.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,63 +1,63 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
@@ -65,47 +65,47 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
+
@@ -113,33 +113,33 @@
-
+
-
+
-
+
-
+
-
+
@@ -147,13 +147,13 @@
-
+
-
+
@@ -161,27 +161,27 @@
-
+
-
+
- Returns the sum of all values in the sequence.
+ Returns the sum of all values in the sequence.
-
+
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/Iterator.xml phpdox-0.12.0/dependencies/php/interfaces/Iterator.xml
--- phpdox-0.11.2/dependencies/php/interfaces/Iterator.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/Iterator.xml 2019-03-13 09:34:17.000000000 +0000
@@ -28,7 +28,7 @@
-
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/MongoCursorInterface.xml phpdox-0.12.0/dependencies/php/interfaces/MongoCursorInterface.xml
--- phpdox-0.11.2/dependencies/php/interfaces/MongoCursorInterface.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/MongoCursorInterface.xml 2019-03-13 09:34:17.000000000 +0000
@@ -3,7 +3,7 @@
-
+
@@ -68,7 +68,7 @@
-
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/MongoDB_BSON_BinaryInterface.xml phpdox-0.12.0/dependencies/php/interfaces/MongoDB_BSON_BinaryInterface.xml
--- phpdox-0.11.2/dependencies/php/interfaces/MongoDB_BSON_BinaryInterface.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/MongoDB_BSON_BinaryInterface.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/MongoDB_BSON_Decimal128Interface.xml phpdox-0.12.0/dependencies/php/interfaces/MongoDB_BSON_Decimal128Interface.xml
--- phpdox-0.11.2/dependencies/php/interfaces/MongoDB_BSON_Decimal128Interface.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/MongoDB_BSON_Decimal128Interface.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,9 @@
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/MongoDB_BSON_JavascriptInterface.xml phpdox-0.12.0/dependencies/php/interfaces/MongoDB_BSON_JavascriptInterface.xml
--- phpdox-0.11.2/dependencies/php/interfaces/MongoDB_BSON_JavascriptInterface.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/MongoDB_BSON_JavascriptInterface.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/MongoDB_BSON_MaxKeyInterface.xml phpdox-0.12.0/dependencies/php/interfaces/MongoDB_BSON_MaxKeyInterface.xml
--- phpdox-0.11.2/dependencies/php/interfaces/MongoDB_BSON_MaxKeyInterface.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/MongoDB_BSON_MaxKeyInterface.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,2 @@
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/MongoDB_BSON_MinKeyInterface.xml phpdox-0.12.0/dependencies/php/interfaces/MongoDB_BSON_MinKeyInterface.xml
--- phpdox-0.11.2/dependencies/php/interfaces/MongoDB_BSON_MinKeyInterface.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/MongoDB_BSON_MinKeyInterface.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,2 @@
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/MongoDB_BSON_ObjectIdInterface.xml phpdox-0.12.0/dependencies/php/interfaces/MongoDB_BSON_ObjectIdInterface.xml
--- phpdox-0.11.2/dependencies/php/interfaces/MongoDB_BSON_ObjectIdInterface.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/MongoDB_BSON_ObjectIdInterface.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/MongoDB_BSON_Persistable.xml phpdox-0.12.0/dependencies/php/interfaces/MongoDB_BSON_Persistable.xml
--- phpdox-0.11.2/dependencies/php/interfaces/MongoDB_BSON_Persistable.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/MongoDB_BSON_Persistable.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/MongoDB_BSON_RegexInterface.xml phpdox-0.12.0/dependencies/php/interfaces/MongoDB_BSON_RegexInterface.xml
--- phpdox-0.11.2/dependencies/php/interfaces/MongoDB_BSON_RegexInterface.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/MongoDB_BSON_RegexInterface.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/MongoDB_BSON_Serializable.xml phpdox-0.12.0/dependencies/php/interfaces/MongoDB_BSON_Serializable.xml
--- phpdox-0.11.2/dependencies/php/interfaces/MongoDB_BSON_Serializable.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/MongoDB_BSON_Serializable.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/MongoDB_BSON_TimestampInterface.xml phpdox-0.12.0/dependencies/php/interfaces/MongoDB_BSON_TimestampInterface.xml
--- phpdox-0.11.2/dependencies/php/interfaces/MongoDB_BSON_TimestampInterface.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/MongoDB_BSON_TimestampInterface.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/MongoDB_BSON_Type.xml phpdox-0.12.0/dependencies/php/interfaces/MongoDB_BSON_Type.xml
--- phpdox-0.11.2/dependencies/php/interfaces/MongoDB_BSON_Type.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/MongoDB_BSON_Type.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,2 +1,2 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/MongoDB_BSON_Unserializable.xml phpdox-0.12.0/dependencies/php/interfaces/MongoDB_BSON_Unserializable.xml
--- phpdox-0.11.2/dependencies/php/interfaces/MongoDB_BSON_Unserializable.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/MongoDB_BSON_Unserializable.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,5 +1,5 @@
-
+
Called during unserialization of the object from BSON. The properties of the BSON array or document will be passed to the method as an array.
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/MongoDB_BSON_UTCDateTimeInterface.xml phpdox-0.12.0/dependencies/php/interfaces/MongoDB_BSON_UTCDateTimeInterface.xml
--- phpdox-0.11.2/dependencies/php/interfaces/MongoDB_BSON_UTCDateTimeInterface.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/MongoDB_BSON_UTCDateTimeInterface.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/MongoDB_Driver_Exception_Exception.xml phpdox-0.12.0/dependencies/php/interfaces/MongoDB_Driver_Exception_Exception.xml
--- phpdox-0.11.2/dependencies/php/interfaces/MongoDB_Driver_Exception_Exception.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/MongoDB_Driver_Exception_Exception.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,2 +1,2 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/MongoDB_Driver_Monitoring_CommandSubscriber.xml phpdox-0.12.0/dependencies/php/interfaces/MongoDB_Driver_Monitoring_CommandSubscriber.xml
--- phpdox-0.11.2/dependencies/php/interfaces/MongoDB_Driver_Monitoring_CommandSubscriber.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/MongoDB_Driver_Monitoring_CommandSubscriber.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,25 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/MongoDB_Driver_Monitoring_Subscriber.xml phpdox-0.12.0/dependencies/php/interfaces/MongoDB_Driver_Monitoring_Subscriber.xml
--- phpdox-0.11.2/dependencies/php/interfaces/MongoDB_Driver_Monitoring_Subscriber.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/MongoDB_Driver_Monitoring_Subscriber.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,2 @@
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/mysql_xdevapi_BaseResult.xml phpdox-0.12.0/dependencies/php/interfaces/mysql_xdevapi_BaseResult.xml
--- phpdox-0.11.2/dependencies/php/interfaces/mysql_xdevapi_BaseResult.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/mysql_xdevapi_BaseResult.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/mysql_xdevapi_CrudOperationBindable.xml phpdox-0.12.0/dependencies/php/interfaces/mysql_xdevapi_CrudOperationBindable.xml
--- phpdox-0.11.2/dependencies/php/interfaces/mysql_xdevapi_CrudOperationBindable.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/mysql_xdevapi_CrudOperationBindable.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/mysql_xdevapi_CrudOperationLimitable.xml phpdox-0.12.0/dependencies/php/interfaces/mysql_xdevapi_CrudOperationLimitable.xml
--- phpdox-0.11.2/dependencies/php/interfaces/mysql_xdevapi_CrudOperationLimitable.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/mysql_xdevapi_CrudOperationLimitable.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/mysql_xdevapi_CrudOperationSkippable.xml phpdox-0.12.0/dependencies/php/interfaces/mysql_xdevapi_CrudOperationSkippable.xml
--- phpdox-0.11.2/dependencies/php/interfaces/mysql_xdevapi_CrudOperationSkippable.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/mysql_xdevapi_CrudOperationSkippable.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/mysql_xdevapi_CrudOperationSortable.xml phpdox-0.12.0/dependencies/php/interfaces/mysql_xdevapi_CrudOperationSortable.xml
--- phpdox-0.11.2/dependencies/php/interfaces/mysql_xdevapi_CrudOperationSortable.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/mysql_xdevapi_CrudOperationSortable.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/mysql_xdevapi_DatabaseObject.xml phpdox-0.12.0/dependencies/php/interfaces/mysql_xdevapi_DatabaseObject.xml
--- phpdox-0.11.2/dependencies/php/interfaces/mysql_xdevapi_DatabaseObject.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/mysql_xdevapi_DatabaseObject.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/mysql_xdevapi_Executable.xml phpdox-0.12.0/dependencies/php/interfaces/mysql_xdevapi_Executable.xml
--- phpdox-0.11.2/dependencies/php/interfaces/mysql_xdevapi_Executable.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/mysql_xdevapi_Executable.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,9 @@
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/mysql_xdevapi_SchemaObject.xml phpdox-0.12.0/dependencies/php/interfaces/mysql_xdevapi_SchemaObject.xml
--- phpdox-0.11.2/dependencies/php/interfaces/mysql_xdevapi_SchemaObject.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/mysql_xdevapi_SchemaObject.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/OuterIterator.xml phpdox-0.12.0/dependencies/php/interfaces/OuterIterator.xml
--- phpdox-0.11.2/dependencies/php/interfaces/OuterIterator.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/OuterIterator.xml 2019-03-13 09:34:17.000000000 +0000
@@ -3,7 +3,7 @@
-
+
@@ -34,7 +34,7 @@
-
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/pht_Runnable.xml phpdox-0.12.0/dependencies/php/interfaces/pht_Runnable.xml
--- phpdox-0.11.2/dependencies/php/interfaces/pht_Runnable.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/pht_Runnable.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,9 @@
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/pht_Threaded.xml phpdox-0.12.0/dependencies/php/interfaces/pht_Threaded.xml
--- phpdox-0.11.2/dependencies/php/interfaces/pht_Threaded.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/pht_Threaded.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/RecursiveIterator.xml phpdox-0.12.0/dependencies/php/interfaces/RecursiveIterator.xml
--- phpdox-0.11.2/dependencies/php/interfaces/RecursiveIterator.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/RecursiveIterator.xml 2019-03-13 09:34:17.000000000 +0000
@@ -3,7 +3,7 @@
-
+
@@ -40,7 +40,7 @@
-
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/SeekableIterator.xml phpdox-0.12.0/dependencies/php/interfaces/SeekableIterator.xml
--- phpdox-0.11.2/dependencies/php/interfaces/SeekableIterator.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/SeekableIterator.xml 2019-03-13 09:34:17.000000000 +0000
@@ -35,7 +35,7 @@
-
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/SessionHandlerInterface.xml phpdox-0.12.0/dependencies/php/interfaces/SessionHandlerInterface.xml
--- phpdox-0.11.2/dependencies/php/interfaces/SessionHandlerInterface.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/SessionHandlerInterface.xml 2019-03-13 09:34:17.000000000 +0000
@@ -16,7 +16,7 @@
-
+
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/SessionIdInterface.xml phpdox-0.12.0/dependencies/php/interfaces/SessionIdInterface.xml
--- phpdox-0.11.2/dependencies/php/interfaces/SessionIdInterface.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/SessionIdInterface.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,9 @@
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/SessionUpdateTimestampHandlerInterface.xml phpdox-0.12.0/dependencies/php/interfaces/SessionUpdateTimestampHandlerInterface.xml
--- phpdox-0.11.2/dependencies/php/interfaces/SessionUpdateTimestampHandlerInterface.xml 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/SessionUpdateTimestampHandlerInterface.xml 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,18 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff -Nru phpdox-0.11.2/dependencies/php/interfaces/Yaf_Route_Interface.xml phpdox-0.12.0/dependencies/php/interfaces/Yaf_Route_Interface.xml
--- phpdox-0.11.2/dependencies/php/interfaces/Yaf_Route_Interface.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/dependencies/php/interfaces/Yaf_Route_Interface.xml 2019-03-13 09:34:17.000000000 +0000
@@ -2,7 +2,7 @@
- this method returns a url according to the argument info, and append query strings to the url according to the argument query.
+ this method returns a url according to the argument info, and append query strings to the url according to the argument query.
@@ -10,7 +10,7 @@
- Yaf_Route_Interface::route is the only method that a custom route should implement. since of 2.3.0, there is another method should also be implemented, see Yaf_Route_Interface::assemble.
+ Yaf_Route_Interface::route is the only method that a custom route should implement. since of 2.3.0, there is another method should also be implemented, see Yaf_Route_Interface::assemble.
diff -Nru phpdox-0.11.2/.gitignore phpdox-0.12.0/.gitignore
--- phpdox-0.11.2/.gitignore 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/.gitignore 2019-03-13 09:34:17.000000000 +0000
@@ -10,3 +10,4 @@
/tests/data/*/xml
/tests/data/*/docs
/tools
+.php_cs.cache
diff -Nru phpdox-0.11.2/LICENSE phpdox-0.12.0/LICENSE
--- phpdox-0.11.2/LICENSE 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/LICENSE 2019-03-13 09:34:17.000000000 +0000
@@ -1,6 +1,6 @@
phpDox
-Copyright (c) 2010-2015 Arne Blankerts
+Copyright (c) 2010-2019 Arne Blankerts and contributors
All rights reserved.
Redistribution and use in source and binary forms, with or without modification,
@@ -28,4 +28,3 @@
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.
-
diff -Nru phpdox-0.11.2/phive.xml phpdox-0.12.0/phive.xml
--- phpdox-0.11.2/phive.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/phive.xml 2019-03-13 09:34:17.000000000 +0000
@@ -1,6 +1,6 @@
-
-
-
+
+
+
diff -Nru phpdox-0.11.2/.php_cs.dist phpdox-0.12.0/.php_cs.dist
--- phpdox-0.11.2/.php_cs.dist 1970-01-01 00:00:00.000000000 +0000
+++ phpdox-0.12.0/.php_cs.dist 2019-03-13 09:34:17.000000000 +0000
@@ -0,0 +1,206 @@
+setRiskyAllowed(true)
+ ->setUsingCache(false)
+ ->setRules(
+ [
+ 'align_multiline_comment' => true,
+ 'array_indentation' => true,
+ 'array_syntax' => ['syntax' => 'short'],
+ 'binary_operator_spaces' => [
+ 'operators' => [
+ '=' => 'align',
+ '=>' => 'align',
+ ],
+ ],
+ 'blank_line_after_namespace' => true,
+ 'blank_line_after_opening_tag' => false,
+ 'blank_line_before_statement' => [
+ 'statements' => [
+ 'break',
+ 'continue',
+ 'declare',
+ 'do',
+ 'for',
+ 'foreach',
+ 'if',
+ 'include',
+ 'include_once',
+ 'require',
+ 'require_once',
+ 'return',
+ 'switch',
+ 'throw',
+ 'try',
+ 'while',
+ 'yield',
+ ],
+ ],
+ 'braces' => [
+ 'allow_single_line_closure' => false,
+ 'position_after_anonymous_constructs' => 'same',
+ 'position_after_control_structures' => 'same',
+ 'position_after_functions_and_oop_constructs' => 'same'
+ ],
+ 'cast_spaces' => ['space' => 'none'],
+ 'class_attributes_separation' => ['elements' => ['const', 'method', 'property']],
+ 'combine_consecutive_issets' => true,
+ 'combine_consecutive_unsets' => true,
+ 'compact_nullable_typehint' => true,
+ 'concat_space' => ['spacing' => 'one'],
+ 'date_time_immutable' => true,
+ 'declare_equal_normalize' => ['space' => 'single'],
+ 'declare_strict_types' => true,
+ 'dir_constant' => true,
+ 'elseif' => true,
+ 'encoding' => true,
+ 'full_opening_tag' => true,
+ 'fully_qualified_strict_types' => true,
+ 'function_declaration' => [
+ 'closure_function_spacing' => 'one'
+ ],
+ 'header_comment' => [
+ 'header' => ''
+ ],
+ 'indentation_type' => true,
+ 'is_null' => true,
+ 'line_ending' => true,
+ 'list_syntax' => ['syntax' => 'short'],
+ 'logical_operators' => true,
+ 'lowercase_cast' => true,
+ 'lowercase_constants' => true,
+ 'lowercase_keywords' => true,
+ 'lowercase_static_reference' => true,
+ 'magic_constant_casing' => true,
+ 'method_argument_space' => ['ensure_fully_multiline' => true],
+ 'modernize_types_casting' => true,
+ 'multiline_comment_opening_closing' => true,
+ 'multiline_whitespace_before_semicolons' => true,
+ 'native_constant_invocation' => true,
+ 'native_function_casing' => true,
+ 'native_function_invocation' => true,
+ 'new_with_braces' => false,
+ 'no_alias_functions' => true,
+ 'no_alternative_syntax' => true,
+ 'no_blank_lines_after_class_opening' => false,
+ 'no_blank_lines_after_phpdoc' => true,
+ 'no_blank_lines_before_namespace' => true,
+ 'no_closing_tag' => true,
+ 'no_empty_comment' => true,
+ 'no_empty_phpdoc' => true,
+ 'no_empty_statement' => true,
+ 'no_extra_blank_lines' => true,
+ 'no_homoglyph_names' => true,
+ 'no_leading_import_slash' => true,
+ 'no_leading_namespace_whitespace' => true,
+ 'no_mixed_echo_print' => ['use' => 'print'],
+ 'no_multiline_whitespace_around_double_arrow' => true,
+ 'no_null_property_initialization' => true,
+ 'no_php4_constructor' => true,
+ 'no_short_bool_cast' => true,
+ 'no_short_echo_tag' => true,
+ 'no_singleline_whitespace_before_semicolons' => true,
+ 'no_spaces_after_function_name' => true,
+ 'no_spaces_inside_parenthesis' => true,
+ 'no_superfluous_elseif' => true,
+ 'no_superfluous_phpdoc_tags' => true,
+ 'no_trailing_comma_in_list_call' => true,
+ 'no_trailing_comma_in_singleline_array' => true,
+ 'no_trailing_whitespace' => true,
+ 'no_trailing_whitespace_in_comment' => true,
+ 'no_unneeded_control_parentheses' => false,
+ 'no_unneeded_curly_braces' => false,
+ 'no_unneeded_final_method' => true,
+ 'no_unreachable_default_argument_value' => true,
+ 'no_unset_on_property' => true,
+ 'no_unused_imports' => true,
+ 'no_useless_else' => true,
+ 'no_useless_return' => true,
+ 'no_whitespace_before_comma_in_array' => true,
+ 'no_whitespace_in_blank_line' => true,
+ 'non_printable_character' => true,
+ 'normalize_index_brace' => true,
+ 'object_operator_without_whitespace' => true,
+ 'ordered_class_elements' => [
+ 'order' => [
+ 'use_trait',
+ 'constant_public',
+ 'constant_protected',
+ 'constant_private',
+ 'property_public_static',
+ 'property_protected_static',
+ 'property_private_static',
+ 'property_public',
+ 'property_protected',
+ 'property_private',
+ 'method_public_static',
+ 'construct',
+ 'destruct',
+ 'magic',
+ 'phpunit',
+ 'method_public',
+ 'method_protected',
+ 'method_private',
+ 'method_protected_static',
+ 'method_private_static',
+ ],
+ ],
+ 'ordered_imports' => true,
+ 'phpdoc_add_missing_param_annotation' => true,
+ 'phpdoc_align' => true,
+ 'phpdoc_annotation_without_dot' => true,
+ 'phpdoc_indent' => true,
+ 'phpdoc_no_access' => true,
+ 'phpdoc_no_empty_return' => true,
+ 'phpdoc_no_package' => true,
+ 'phpdoc_order' => true,
+ 'phpdoc_return_self_reference' => true,
+ 'phpdoc_scalar' => true,
+ 'phpdoc_separation' => true,
+ 'phpdoc_single_line_var_spacing' => true,
+ 'phpdoc_to_comment' => true,
+ 'phpdoc_trim' => true,
+ 'phpdoc_trim_consecutive_blank_line_separation' => true,
+ 'phpdoc_types' => ['groups' => ['simple', 'meta']],
+ 'phpdoc_types_order' => true,
+ 'phpdoc_to_return_type' => true,
+ 'phpdoc_var_without_name' => true,
+ 'pow_to_exponentiation' => true,
+ 'protected_to_private' => true,
+ 'return_assignment' => true,
+ 'return_type_declaration' => ['space_before' => 'none'],
+ 'self_accessor' => true,
+ 'semicolon_after_instruction' => true,
+ 'set_type_to_cast' => true,
+ 'short_scalar_cast' => true,
+ 'simplified_null_return' => true,
+ 'single_blank_line_at_eof' => true,
+ 'single_import_per_statement' => true,
+ 'single_line_after_imports' => true,
+ 'single_quote' => true,
+ 'standardize_not_equals' => true,
+ 'ternary_to_null_coalescing' => true,
+ 'trailing_comma_in_multiline_array' => false,
+ 'trim_array_spaces' => true,
+ 'unary_operator_spaces' => true,
+ 'visibility_required' => [
+ 'elements' => [
+ 'const',
+ 'method',
+ 'property',
+ ],
+ ],
+ 'void_return' => true,
+ 'whitespace_after_comma_in_array' => true,
+ 'yoda_style' => false
+ ]
+ )
+ ->setFinder(
+ PhpCsFixer\Finder::create()
+ ->files()
+ ->in(__DIR__ . '/build')
+ ->in(__DIR__ . '/src')
+ ->in(__DIR__ . '/tests')
+ ->notName('*.phpt')
+ );
diff -Nru phpdox-0.11.2/phpdox phpdox-0.12.0/phpdox
--- phpdox-0.11.2/phpdox 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/phpdox 2019-03-13 09:34:17.000000000 +0000
@@ -1,7 +1,7 @@
#!/usr/bin/env php
+ * Copyright (c) 2010-2019 Arne Blankerts
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
@@ -61,8 +61,9 @@
$factory = new TheSeer\phpDox\Factory(
new \TheSeer\phpDox\FileInfo(__DIR__),
- new \TheSeer\phpDox\Version('0.11.0-dev')
+ new \TheSeer\phpDox\Version('0.12.0-dev')
);
+
exit($factory->getCLI()->run(
new TheSeer\phpDox\CLIOptions($_SERVER['argv'])
));
diff -Nru phpdox-0.11.2/phpunit.xml.dist phpdox-0.12.0/phpunit.xml.dist
--- phpdox-0.11.2/phpunit.xml.dist 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/phpunit.xml.dist 2019-03-13 09:34:17.000000000 +0000
@@ -1,34 +1,35 @@
-
-
-
-
-
- tests/Unit
- tests/Integration
-
-
+ beStrictAboutCoversAnnotation="true"
+ beStrictAboutOutputDuringTests="true"
+ beStrictAboutTestsThatDoNotTestAnything="true"
+ beStrictAboutTodoAnnotatedTests="true"
+ beStrictAboutChangesToGlobalState="true"
+ bootstrap="tests/bootstrap.php">
+
+
+ tests/Unit
+ tests/Integration
+
+
-
-
-
-
-
-
+
+
+
+
+
+
-
-
- src
-
- src/bootstrap
-
-
-
+
+
+ src
+
+ src/bootstrap
+
+
+
diff -Nru phpdox-0.11.2/README.md phpdox-0.12.0/README.md
--- phpdox-0.11.2/README.md 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/README.md 2019-03-13 09:34:17.000000000 +0000
@@ -12,7 +12,7 @@
Requirements
------------
-- PHP Version 5.5+ (PHP 7.x recommended)
+- PHP Version 7.1+ (For PHP 5.5+, use phpDox 0.11.2)
- ext/dom
- ext/xsl
- ext/iconv and [libiconv version >= 2.12](http://www.gnu.org/software/libiconv/documentation/libiconv/iconv.1.html)
diff -Nru phpdox-0.11.2/src/ApplicationException.php phpdox-0.12.0/src/ApplicationException.php
--- phpdox-0.11.2/src/ApplicationException.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/ApplicationException.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,13 +1,14 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
+ * The main Application class
*
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
+ * @author Arne Blankerts
+ * @copyright Arne Blankerts , All rights reserved.
+ * @license BSD License
*
+ * @link http://phpDox.net
*/
-namespace TheSeer\phpDox {
+class Application {
+ /**
+ * Logger for progress and error reporting
+ *
+ * @var ProgressLogger
+ */
+ private $logger;
- use TheSeer\DirectoryScanner\DirectoryScanner;
- use TheSeer\phpDox\Collector\InheritanceResolver;
- use TheSeer\phpDox\Generator\Enricher\EnricherException;
-
- /**
- * The main Application class
- *
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- * @link http://phpDox.net
- */
- class Application {
-
- /**
- * Logger for progress and error reporting
- *
- * @var ProgressLogger
- */
- private $logger;
-
- /**
- * Factory instance
- * @var Factory
- */
- private $factory;
-
- /**
- * Constructor of PHPDox Application
- *
- * @param Factory $factory Factory instance
- * @param ProgressLogger $logger Instance of the SilentProgressLogger class
- */
- public function __construct(Factory $factory, ProgressLogger $logger) {
- $this->factory = $factory;
- $this->logger = $logger;
- }
-
- /**
- * Run Bootstrap code for given list of bootstrap files
- *
- * @param FileInfoCollection $requires
- *
- * @return Bootstrap
- */
- public function runBootstrap(FileInfoCollection $requires) {
- $bootstrap = $this->factory->getBootstrap();
- $bootstrap->load($requires, true);
- return $bootstrap;
- }
+ /**
+ * Factory instance
+ *
+ * @var Factory
+ */
+ private $factory;
+ /**
+ * Constructor of PHPDox Application
+ *
+ * @param Factory $factory Factory instance
+ * @param ProgressLogger $logger Instance of the SilentProgressLogger class
+ */
+ public function __construct(Factory $factory, ProgressLogger $logger) {
+ $this->factory = $factory;
+ $this->logger = $logger;
+ }
- public function runConfigChangeDetection(FileInfo $workDirectory, FileInfo $configFile) {
- $index = new FileInfo( (string)$workDirectory . '/index.xml');
- if (!$index->exists() || ($index->getMTime() >= $configFile->getMTime())) {
- return;
- }
- $this->logger->log("Configuration change detected - cleaning cache");
- $cleaner = $this->factory->getDirectoryCleaner();
- $cleaner->process($workDirectory);
- }
-
- /**
- * Run collection process on given directory tree
- *
- * @param CollectorConfig $config Configuration options
- *
- * @throws ApplicationException
- * @return void
- */
- public function runCollector(CollectorConfig $config) {
- $this->logger->log("Starting collector");
-
- $srcDir = $config->getSourceDirectory();
- if (!$srcDir->isDir()) {
- throw new ApplicationException(
- sprintf('Invalid src directory "%s" specified', $srcDir),
- ApplicationException::InvalidSrcDirectory
- );
- }
+ /**
+ * Run Bootstrap code for given list of bootstrap files
+ */
+ public function runBootstrap(FileInfoCollection $requires): Bootstrap {
+ $bootstrap = $this->factory->getBootstrap();
+ $bootstrap->load($requires, true);
+
+ return $bootstrap;
+ }
+
+ public function runConfigChangeDetection(FileInfo $workDirectory, FileInfo $configFile): void {
+ $index = new FileInfo((string)$workDirectory . '/index.xml');
- $collector = $this->factory->getCollector($config);
+ if (!$index->exists() || ($index->getMTime() >= $configFile->getMTime())) {
+ return;
+ }
+ $this->logger->log('Configuration change detected - cleaning cache');
+ $cleaner = $this->factory->getDirectoryCleaner();
+ $cleaner->process($workDirectory);
+ }
- $scanner = $this->factory->getScanner(
- $config->getIncludeMasks(),
- $config->getExcludeMasks()
+ /**
+ * Run collection process on given directory tree
+ *
+ * @param CollectorConfig $config Configuration options
+ *
+ * @throws ApplicationException
+ */
+ public function runCollector(CollectorConfig $config): void {
+ $this->logger->log('Starting collector');
+
+ $srcDir = $config->getSourceDirectory();
+
+ if (!$srcDir->isDir()) {
+ throw new ApplicationException(
+ \sprintf('Invalid src directory "%s" specified', $srcDir),
+ ApplicationException::InvalidSrcDirectory
);
- $project = $collector->run($scanner);
+ }
- if ($collector->hasParseErrors()) {
- $this->logger->log('The following file(s) had errors during processing and were excluded:');
- foreach($collector->getParseErrors() as $file => $message) {
- $this->logger->log(' - ' . $file . ' (' . $message . ')');
- }
+ $collector = $this->factory->getCollector($config);
+
+ $scanner = $this->factory->getScanner(
+ $config->getIncludeMasks(),
+ $config->getExcludeMasks()
+ );
+ $project = $collector->run($scanner);
+
+ if ($collector->hasParseErrors()) {
+ $this->logger->log('The following file(s) had errors during processing and were excluded:');
+
+ foreach ($collector->getParseErrors() as $file => $message) {
+ $this->logger->log(' - ' . $file . ' (' . $message . ')');
}
+ }
- $this->logger->log(
- sprintf("Saving results to directory '%s'", $config->getWorkDirectory())
- );
- $vanished = $project->cleanVanishedFiles();
- if (count($vanished) > 0) {
- $this->logger->log(sprintf("Removed %d vanished file(s) from project:", count($vanished)));
- foreach($vanished as $file) {
- $this->logger->log(' - ' . $file);
- }
+ $this->logger->log(
+ \sprintf("Saving results to directory '%s'", $config->getWorkDirectory())
+ );
+ $vanished = $project->cleanVanishedFiles();
+
+ if (\count($vanished) > 0) {
+ $this->logger->log(\sprintf('Removed %d vanished file(s) from project:', \count($vanished)));
+
+ foreach ($vanished as $file) {
+ $this->logger->log(' - ' . $file);
}
- $changed = $project->save();
- if ($config->doResolveInheritance()) {
- /** @var $resolver InheritanceResolver */
- $resolver = $this->factory->getInheritanceResolver();
- $resolver->resolve($changed, $project, $config->getInheritanceConfig());
-
- if ($resolver->hasUnresolved()) {
- $this->logger->log('The following unit(s) had missing dependencies during inheritance resolution:');
- foreach($resolver->getUnresolved() as $class => $missing) {
- if (is_array($missing)) {
- $missing = join(', ', $missing);
- }
- $this->logger->log(' - ' . $class . ' (missing ' . $missing . ')');
+ }
+ $changed = $project->save();
+
+ if ($config->doResolveInheritance()) {
+ /** @var $resolver InheritanceResolver */
+ $resolver = $this->factory->getInheritanceResolver();
+ $resolver->resolve($changed, $project, $config->getInheritanceConfig());
+
+ if ($resolver->hasUnresolved()) {
+ $this->logger->log('The following unit(s) had missing dependencies during inheritance resolution:');
+
+ foreach ($resolver->getUnresolved() as $class => $missing) {
+ if (\is_array($missing)) {
+ $missing = \implode(', ', $missing);
}
+ $this->logger->log(' - ' . $class . ' (missing ' . $missing . ')');
}
+ }
- if ($resolver->hasErrors()) {
- $this->logger->log('The following unit(s) caused errors during inheritance resolution:');
- foreach($resolver->getErrors() as $class => $error) {
- $this->logger->log(' - ' . $class . ': ' . implode(', ', $error));
- }
+ if ($resolver->hasErrors()) {
+ $this->logger->log('The following unit(s) caused errors during inheritance resolution:');
+
+ foreach ($resolver->getErrors() as $class => $error) {
+ $this->logger->log(' - ' . $class . ': ' . \implode(', ', $error));
}
}
- $this->logger->log("Collector process completed\n");
}
+ $this->logger->log("Collector process completed\n");
+ }
- /**
- * Run Documentation generation process
- *
- * @param GeneratorConfig $config
- *
- * @throws ApplicationException
- * @return void
- */
- public function runGenerator(GeneratorConfig $config) {
- $this->logger->reset();
- $this->logger->log("Starting generator");
-
- $engineFactory = $this->factory->getEngineFactory();
- $enricherFactory = $this->factory->getEnricherFactory();
-
- $failed = array_diff($config->getRequiredEngines(), $engineFactory->getEngineList());
- if (count($failed)) {
- $list = join("', '", $failed);
- throw new ApplicationException("The engine(s) '$list' is/are not registered", ApplicationException::UnknownEngine);
- }
+ /**
+ * Run Documentation generation process
+ *
+ * @throws ApplicationException
+ */
+ public function runGenerator(GeneratorConfig $config): void {
+ $this->logger->reset();
+ $this->logger->log('Starting generator');
- $failed = array_diff($config->getRequiredEnrichers(), $enricherFactory->getEnricherList());
- if (count($failed)) {
- $list = join("', '", $failed);
- throw new ApplicationException("The enricher(s) '$list' is/are not registered", ApplicationException::UnknownEnricher);
- }
+ $engineFactory = $this->factory->getEngineFactory();
+ $enricherFactory = $this->factory->getEnricherFactory();
- $generator = $this->factory->getGenerator();
+ $failed = \array_diff($config->getRequiredEngines(), $engineFactory->getEngineList());
- foreach($config->getActiveBuilds() as $buildCfg) {
- $generator->addEngine( $engineFactory->getInstanceFor($buildCfg) );
- }
+ if (\count($failed)) {
+ $list = \implode("', '", $failed);
- $this->logger->log('Loading enrichers');
- foreach($config->getActiveEnrichSources() as $type => $enrichCfg) {
- try {
- $enricher = $enricherFactory->getInstanceFor($enrichCfg);
- $generator->addEnricher($enricher);
- $this->logger->log(
- sprintf('Enricher %s initialized successfully', $enricher->getName())
- );
- } catch (EnricherException $e) {
- $this->logger->log(
- sprintf("Exception while initializing enricher %s:\n\n %s\n",
- $type,
- $e->getMessage()
- )
- );
- }
- }
+ throw new ApplicationException("The engine(s) '$list' is/are not registered", ApplicationException::UnknownEngine);
+ }
- $pconfig = $config->getProjectConfig();
+ $failed = \array_diff($config->getRequiredEnrichers(), $enricherFactory->getEnricherList());
- if (!file_exists($pconfig->getWorkDirectory() . '/index.xml')) {
- throw new ApplicationException(
- 'Workdirectory does not contain an index.xml file. Did you run the collector?',
- ApplicationException::IndexMissing
- );
- }
+ if (\count($failed)) {
+ $list = \implode("', '", $failed);
- if (!file_exists($pconfig->getWorkDirectory() . '/source.xml')) {
- throw new ApplicationException(
- 'Workdirectory does not contain an source.xml file. Did you run the collector?',
- ApplicationException::SourceMissing
- );
- }
+ throw new ApplicationException("The enricher(s) '$list' is/are not registered", ApplicationException::UnknownEnricher);
+ }
+
+ $generator = $this->factory->getGenerator();
- $srcDir = $pconfig->getSourceDirectory();
- if (!file_exists($srcDir) || !is_dir($srcDir)) {
- throw new ApplicationException(
- sprintf('Invalid src directory "%s" specified', $srcDir),
- ApplicationException::InvalidSrcDirectory
+ foreach ($config->getActiveBuilds() as $buildCfg) {
+ $generator->addEngine($engineFactory->getInstanceFor($buildCfg));
+ }
+
+ $this->logger->log('Loading enrichers');
+
+ foreach ($config->getActiveEnrichSources() as $type => $enrichCfg) {
+ try {
+ $enricher = $enricherFactory->getInstanceFor($enrichCfg);
+ $generator->addEnricher($enricher);
+ $this->logger->log(
+ \sprintf('Enricher %s initialized successfully', $enricher->getName())
+ );
+ } catch (EnricherException $e) {
+ $this->logger->log(
+ \sprintf(
+ "Exception while initializing enricher %s:\n\n %s\n",
+ $type,
+ $e->getMessage()
+ )
);
}
+ }
- $this->logger->log("Starting event loop.\n");
- $generator->run(
- new \TheSeer\phpDox\Generator\Project(
- $srcDir,
- $pconfig->getWorkDirectory()
- )
+ $pconfig = $config->getProjectConfig();
+
+ if (!\file_exists($pconfig->getWorkDirectory() . '/index.xml')) {
+ throw new ApplicationException(
+ 'Workdirectory does not contain an index.xml file. Did you run the collector?',
+ ApplicationException::IndexMissing
);
- $this->logger->log("Generator process completed");
}
- }
+ if (!\file_exists($pconfig->getWorkDirectory() . '/source.xml')) {
+ throw new ApplicationException(
+ 'Workdirectory does not contain an source.xml file. Did you run the collector?',
+ ApplicationException::SourceMissing
+ );
+ }
+
+ $srcDir = $pconfig->getSourceDirectory();
+ if (!$srcDir->exists() || !$srcDir->isDir()) {
+ throw new ApplicationException(
+ \sprintf('Invalid src directory "%s" specified', $srcDir),
+ ApplicationException::InvalidSrcDirectory
+ );
+ }
+
+ $this->logger->log("Starting event loop.\n");
+ $generator->run(
+ new \TheSeer\phpDox\Generator\Project(
+ $srcDir,
+ $pconfig->getWorkDirectory()
+ )
+ );
+ $this->logger->log('Generator process completed');
+ }
}
diff -Nru phpdox-0.11.2/src/autoload.php phpdox-0.12.0/src/autoload.php
--- phpdox-0.11.2/src/autoload.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/autoload.php 2019-03-13 09:34:17.000000000 +0000
@@ -95,6 +95,7 @@
'theseer\\phpdox\\factoryinterface' => '/shared/FactoryInterface.php',
'theseer\\phpdox\\fileinfo' => '/shared/FileInfo.php',
'theseer\\phpdox\\fileinfocollection' => '/shared/FileInfoCollection.php',
+ 'theseer\\phpdox\\fileinfocollectionexception' => '/shared/FileInfoCollectionException.php',
'theseer\\phpdox\\fileinfoexception' => '/shared/FileInfoException.php',
'theseer\\phpdox\\generator\\abstractclassevent' => '/generator/events/AbstractClassEvent.php',
'theseer\\phpdox\\generator\\abstractcollection' => '/generator/project/collections/AbstractCollection.php',
diff -Nru phpdox-0.11.2/src/bootstrap/BackendBootstrapApi.php phpdox-0.12.0/src/bootstrap/BackendBootstrapApi.php
--- phpdox-0.11.2/src/bootstrap/BackendBootstrapApi.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/bootstrap/BackendBootstrapApi.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,63 +1,27 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox {
-
- use TheSeer\phpDox\Collector\Backend\Factory as BackendFactory;
-
- class BackendBootstrapApi {
-
- protected $name;
- protected $factory;
-
- public function __construct($name, BackendFactory $factory) {
- $this->name = $name;
- $this->factory = $factory;
- }
-
- public function implementedByClass($class) {
- $this->factory->addBackendClass($this->name, $class);
- return $this;
- }
-
- public function instantiatedByFactory(FactoryInterface $factory) {
- $this->factory->addBackendFactory($this->name, $factory);
- return $this;
- }
+name = $name;
+ $this->factory = $factory;
+ }
+
+ public function implementedByClass($class) {
+ $this->factory->addBackendClass($this->name, $class);
+
+ return $this;
+ }
+
+ public function instantiatedByFactory(FactoryInterface $factory) {
+ $this->factory->addBackendFactory($this->name, $factory);
+
+ return $this;
}
}
diff -Nru phpdox-0.11.2/src/bootstrap/BootstrapApi.php phpdox-0.12.0/src/bootstrap/BootstrapApi.php
--- phpdox-0.11.2/src/bootstrap/BootstrapApi.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/bootstrap/BootstrapApi.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,195 +1,147 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
+ * Bootstrapping API for registering backends, generator engines and parsers
*
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
+ * This class provides the API for use within the bootstrap process to register
+ * collecting backends, additional parsers for annotations, generator engines for
+ * additional output formats as well as enrichment plugins
*
* @author Arne Blankerts
* @copyright Arne Blankerts , All rights reserved.
* @license BSD License
- *
*/
-namespace TheSeer\phpDox {
+class BootstrapApi {
+ /**
+ * Reference to the BackendFactory instance
+ *
+ * @var BackendFactory
+ */
+ private $backendFactory;
+
+ /**
+ * Reference to the EngineFactory instance
+ *
+ * @var EngineFactory
+ */
+ private $engineFactory;
+
+ /**
+ * Reference to the DocblockParserFactory instance
+ *
+ * @var DocBlockFactory
+ */
+ private $parserFactory;
+
+ /**
+ * @var EnricherFactory
+ */
+ private $enricherFactory;
+
+ /**
+ * Array of registered engines
+ *
+ * @var array
+ */
+ private $engines = [];
+
+ /**
+ * Array of registered enrichers
+ *
+ * @var array
+ */
+ private $enrichers = [];
+
+ /**
+ * Array of registered backends
+ *
+ * @var array
+ */
+ private $backends = [];
+
+ /**
+ * Constructor
+ */
+ public function __construct(BackendFactory $bf, DocBlockFactory $df, EnricherFactory $erf, EngineFactory $enf, ProgressLogger $logger) {
+ $this->backendFactory = $bf;
+ $this->engineFactory = $enf;
+ $this->parserFactory = $df;
+ $this->enricherFactory = $erf;
+ $this->logger = $logger;
+ }
+
+ /**
+ * Get list of all registered generator engines
+ */
+ public function getEngines(): array {
+ return $this->engines;
+ }
+
+ /**
+ * Get list of all registered enrichers
+ */
+ public function getEnrichers(): array {
+ return $this->enrichers;
+ }
+
+ /**
+ * Get list of all registered collector backends
+ */
+ public function getBackends(): array {
+ return $this->backends;
+ }
+
+ /**
+ * Register a new backend
+ *
+ * @param string $name Name of the collector backend
+ * @param string $description A describing text
+ */
+ public function registerBackend($name, $description = 'no description set'): BackendBootstrapApi {
+ $this->logger->log("Registered collector backend '$name'");
+ $this->backends[$name] = $description;
+
+ return new BackendBootstrapApi($name, $this->backendFactory);
+ }
+
+ /**
+ * Register a new generator enginge
+ *
+ * @param string $name Name of the generator engine
+ * @param string $description A describing text
+ */
+ public function registerEngine($name, $description): EngineBootstrapApi {
+ $this->logger->log("Registered output engine '$name'");
+ $this->engines[$name] = $description;
+
+ return new EngineBootstrapApi($name, $this->engineFactory);
+ }
+
+ /**
+ * @param $annotation
+ */
+ public function registerParser($annotation): ParserBootstrapApi {
+ $this->logger->log("Registered parser for '$annotation' annotation");
+
+ return new ParserBootstrapApi($annotation, $this->parserFactory);
+ }
+
+ /**
+ * Register a new enricher
+ *
+ * @param string $name Name of the enricher
+ * @param string $description A describing text
+ */
+ public function registerEnricher($name, $description): EnricherBootstrapApi {
+ $this->logger->log("Registered enricher '$name'");
+ $this->enrichers[$name] = $description;
- use \TheSeer\phpDox\Collector\Backend\Factory as BackendFactory;
- use \TheSeer\phpDox\DocBlock\Factory as DocBlockFactory;
- use \TheSeer\phpDox\Generator\Engine\Factory as EngineFactory;
- use \TheSeer\phpDox\Generator\Enricher\Factory as EnricherFactory;
-
- /**
- * Bootstrapping API for registering backends, generator engines and parsers
- *
- * This class provides the API for use within the bootstrap process to register
- * collecting backends, additional parsers for annotations, generator engines for
- * additional output formats as well as enrichment plugins
- *
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
- class BootstrapApi {
-
- /**
- * Reference to the BackendFactory instance
- *
- * @var BackendFactory
- */
- private $backendFactory;
-
- /**
- * Reference to the EngineFactory instance
- *
- * @var EngineFactory
- */
- private $engineFactory;
-
- /**
- * Reference to the DocblockParserFactory instance
- *
- * @var DocBlockFactory
- */
- private $parserFactory;
-
- /**
- * @var EnricherFactory
- */
- private $enricherFactory;
-
- /**
- * Array of registered engines
- *
- * @var array
- */
- private $engines = array();
-
- /**
- * Array of registered enrichers
- *
- * @var array
- */
- private $enrichers = array();
- /**
- * Array of registered backends
- *
- * @var array
- */
- private $backends = array();
-
- /**
- * Constructor
- *
- * @param FactoryInterface $factory
- */
- public function __construct(BackendFactory $bf, DocBlockFactory $df, EnricherFactory $erf, EngineFactory $enf, ProgressLogger $logger) {
- $this->backendFactory = $bf;
- $this->engineFactory = $enf;
- $this->parserFactory = $df;
- $this->enricherFactory = $erf;
- $this->logger = $logger;
- }
-
- /**
- * Get list of all registered generator engines
- *
- * @return array
- */
- public function getEngines() {
- return $this->engines;
- }
-
- /**
- * Get list of all registered enrichers
- *
- * @return array
- */
- public function getEnrichers() {
- return $this->enrichers;
- }
-
- /**
- * Get list of all registered collector backends
- *
- * @return array
- */
- public function getBackends() {
- return $this->backends;
- }
-
- /**
- * Register a new backend
- *
- * @param string $name Name of the collector backend
- * @param string $description A describing text
- *
- * @return BackendBootstrapApi
- */
- public function registerBackend($name, $description = 'no description set') {
- $this->logger->log("Registered collector backend '$name'");
- $this->backends[$name] = $description;
- return new BackendBootstrapApi($name, $this->backendFactory);
- }
-
- /**
- * Register a new generator enginge
- *
- * @param string $name Name of the generator engine
- * @param string $description A describing text
- *
- * @return EngineBootstrapApi
- */
- public function registerEngine($name, $description) {
- $this->logger->log("Registered output engine '$name'");
- $this->engines[$name] = $description;
- return new EngineBootstrapApi($name, $this->engineFactory);
- }
-
- /**
- * @param $annotation
- * @return ParserBootstrapApi
- */
- public function registerParser($annotation) {
- $this->logger->log("Registered parser for '$annotation' annotation");
- return new ParserBootstrapApi($annotation, $this->parserFactory);
- }
-
- /**
- * Register a new enricher
- *
- * @param string $name Name of the enricher
- * @param string $description A describing text
- *
- * @return EnricherBootstrapApi
- */
- public function registerEnricher($name, $description) {
- $this->logger->log("Registered enricher '$name'");
- $this->enrichers[$name] = $description;
- return new EnricherBootstrapApi($name, $this->enricherFactory);
- }
+ return new EnricherBootstrapApi($name, $this->enricherFactory);
}
}
diff -Nru phpdox-0.11.2/src/bootstrap/BootstrapException.php phpdox-0.12.0/src/bootstrap/BootstrapException.php
--- phpdox-0.11.2/src/bootstrap/BootstrapException.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/bootstrap/BootstrapException.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,10 +1,6 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-
-namespace TheSeer\phpDox {
-
- class Bootstrap {
-
- public function __construct(ProgressLogger $logger, BootstrapApi $api) {
- $this->logger = $logger;
- $this->api = $api;
- }
+logger = $logger;
+ $this->api = $api;
+ }
- /**
- * Load bootstrap files to register components and builder
- *
- * @param FileInfoCollection $require list of files to require
- *
- * @throws BootstrapException
- */
- public function load(FileInfoCollection $require, $silent = TRUE) {
- foreach($require as $file) {
- /** @var FileInfo $file */
- if (!$file->exists()) {
- throw new BootstrapException(
- sprintf("Require file '%s' not found or not a file", $file->getRealPath()),
- BootstrapException::RequireFailed
- );
- }
- if (!$silent) {
- $this->logger->log(
- sprintf("Loading bootstrap file '%s'", $file->getRealPath())
- );
- }
- $this->loadBootstrap($file);
+ /**
+ * Load bootstrap files to register components and builder
+ *
+ * @param FileInfoCollection $require list of files to require
+ *
+ * @throws BootstrapException
+ */
+ public function load(FileInfoCollection $require, $silent = true): void {
+ foreach ($require as $file) {
+ /** @var FileInfo $file */
+ if (!$file->exists()) {
+ throw new BootstrapException(
+ \sprintf("Require file '%s' not found or not a file", $file->getRealPath()),
+ BootstrapException::RequireFailed
+ );
}
- }
- public function getBackends() {
- return $this->api->getBackends();
+ if (!$silent) {
+ $this->logger->log(
+ \sprintf("Loading bootstrap file '%s'", $file->getRealPath())
+ );
+ }
+ $this->loadBootstrap($file);
}
+ }
- public function getEngines() {
- return $this->api->getEngines();
- }
+ public function getBackends() {
+ return $this->api->getBackends();
+ }
- public function getEnrichers() {
- return $this->api->getEnrichers();
- }
+ public function getEngines() {
+ return $this->api->getEngines();
+ }
- private function loadBootstrap($filename) {
- /** @noinspection PhpUnusedLocalVariableInspection */
- $phpDox = $this->api;
- /** @noinspection PhpIncludeInspection */
- require $filename;
- }
+ public function getEnrichers() {
+ return $this->api->getEnrichers();
}
+ private function loadBootstrap($filename): void {
+ /** @noinspection PhpUnusedLocalVariableInspection */
+ $phpDox = $this->api;
+ /** @noinspection PhpIncludeInspection */
+ require $filename;
+ }
}
diff -Nru phpdox-0.11.2/src/bootstrap/EngineBootstrapApi.php phpdox-0.12.0/src/bootstrap/EngineBootstrapApi.php
--- phpdox-0.11.2/src/bootstrap/EngineBootstrapApi.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/bootstrap/EngineBootstrapApi.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,68 +1,33 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox {
-
- use TheSeer\phpDox\Generator\Engine\Factory as EngineFactory;
-
- class EngineBootstrapApi {
-
- private $name;
- private $factory;
-
- public function __construct($name, EngineFactory $factory) {
- $this->name = $name;
- $this->factory = $factory;
- }
-
- public function implementedByClass($class) {
- $this->factory->addEngineClass($this->name, $class);
- return $this;
- }
-
- public function instantiatedByFactory(FactoryInterface $factory) {
- $this->factory->addEngineFactory($this->name, $factory);
- return $this;
- }
-
- public function withConfigClass($class) {
- $this->factory->setConfigClass($this->name, $class);
- return $this;
- }
+name = $name;
+ $this->factory = $factory;
+ }
+
+ public function implementedByClass($class) {
+ $this->factory->addEngineClass($this->name, $class);
+
+ return $this;
+ }
+
+ public function instantiatedByFactory(FactoryInterface $factory) {
+ $this->factory->addEngineFactory($this->name, $factory);
+
+ return $this;
+ }
+
+ public function withConfigClass($class) {
+ $this->factory->setConfigClass($this->name, $class);
+
+ return $this;
}
}
diff -Nru phpdox-0.11.2/src/bootstrap/EnricherBootstrapApi.php phpdox-0.12.0/src/bootstrap/EnricherBootstrapApi.php
--- phpdox-0.11.2/src/bootstrap/EnricherBootstrapApi.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/bootstrap/EnricherBootstrapApi.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,68 +1,33 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox {
-
- use TheSeer\phpDox\Generator\Enricher\Factory as EnricherFactory;
-
- class EnricherBootstrapApi {
-
- private $name;
- private $factory;
-
- public function __construct($name, EnricherFactory $factory) {
- $this->name = $name;
- $this->factory = $factory;
- }
-
- public function implementedByClass($class) {
- $this->factory->addEnricherClass($this->name, $class);
- return $this;
- }
-
- public function instantiatedByFactory(FactoryInterface $factory) {
- $this->factory->addEnricherFactory($this->name, $factory);
- return $this;
- }
-
- public function withConfigClass($class) {
- $this->factory->setConfigClass($this->name, $class);
- return $this;
- }
+name = $name;
+ $this->factory = $factory;
+ }
+
+ public function implementedByClass($class) {
+ $this->factory->addEnricherClass($this->name, $class);
+
+ return $this;
+ }
+
+ public function instantiatedByFactory(FactoryInterface $factory) {
+ $this->factory->addEnricherFactory($this->name, $factory);
+
+ return $this;
+ }
+
+ public function withConfigClass($class) {
+ $this->factory->setConfigClass($this->name, $class);
+
+ return $this;
}
}
diff -Nru phpdox-0.11.2/src/bootstrap/ParserBootstrapApi.php phpdox-0.12.0/src/bootstrap/ParserBootstrapApi.php
--- phpdox-0.11.2/src/bootstrap/ParserBootstrapApi.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/bootstrap/ParserBootstrapApi.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,61 +1,23 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox {
-
- use TheSeer\phpDox\DocBlock\Factory as DocBlockFactory;
-
- class ParserBootstrapApi {
-
- private $annotation;
- private $factory;
-
- public function __construct($annotation, DocBlockFactory $factory) {
- $this->annotation = $annotation;
- $this->factory = $factory;
- }
-
- public function implementedByClass($class) {
- $this->factory->addParserClass($this->annotation, $class);
- }
-
- public function instantiatedByFactory(FactoryInterface $factory) {
- $this->factory->addParserFactory($this->annotation, $factory);
- }
+annotation = $annotation;
+ $this->factory = $factory;
+ }
+
+ public function implementedByClass($class): void {
+ $this->factory->addParserClass($this->annotation, $class);
+ }
+
+ public function instantiatedByFactory(FactoryInterface $factory): void {
+ $this->factory->addParserFactory($this->annotation, $factory);
}
}
diff -Nru phpdox-0.11.2/src/CLIOptionsException.php phpdox-0.12.0/src/CLIOptionsException.php
--- phpdox-0.11.2/src/CLIOptionsException.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/CLIOptionsException.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,8 +1,5 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-
-namespace TheSeer\phpDox {
+argv = $argv;
- }
+ public function __construct(array $argv) {
+ $this->argv = $argv;
+ }
- public function getHelpScreen() {
- return <<parse();
- public function showHelp() {
- $this->parse();
- return $this->parsed['help'];
- }
+ return $this->parsed['help'];
+ }
- public function showVersion() {
- $this->parse();
- return $this->parsed['version'];
- }
+ public function showVersion() {
+ $this->parse();
- public function listBackends() {
- $this->parse();
- return $this->parsed['backends'];
- }
+ return $this->parsed['version'];
+ }
- public function listEngines() {
- $this->parse();
- return $this->parsed['engines'];
- }
+ public function listBackends() {
+ $this->parse();
- public function listEnrichers() {
- $this->parse();
- return $this->parsed['enrichers'];
- }
+ return $this->parsed['backends'];
+ }
- public function generateSkel() {
- $this->parse();
- return $this->parsed['skel'];
- }
+ public function listEngines() {
+ $this->parse();
- public function generateStrippedSkel() {
- $this->parse();
- return $this->parsed['strip'];
- }
+ return $this->parsed['engines'];
+ }
- public function configFile() {
- $this->parse();
- if (!is_string($this->parsed['file'])) {
- return '';
- }
- return $this->parsed['file'];
- }
+ public function listEnrichers() {
+ $this->parse();
- public function generatorOnly() {
- $this->parse();
- return $this->parsed['generator'];
- }
+ return $this->parsed['enrichers'];
+ }
+
+ public function generateSkel() {
+ $this->parse();
+
+ return $this->parsed['skel'];
+ }
+
+ public function generateStrippedSkel() {
+ $this->parse();
+
+ return $this->parsed['strip'];
+ }
- public function collectorOnly() {
- $this->parse();
- return $this->parsed['collector'];
+ public function configFile() {
+ $this->parse();
+
+ if (!\is_string($this->parsed['file'])) {
+ return '';
}
- private function parse() {
- $options = array(
- 'file','help','version','collector','generator', 'engines', 'enrichers', 'backends', 'skel', 'strip'
- );
- $shortMap = array(
- 'f' => 'file',
- 'h' => 'help',
- 'c' => 'collector',
- 'g' => 'generator',
- 'v' => 'version'
- );
- $valueOptions = array(
- 'file'
- );
-
- $conflictingOptions = array(
- 'collector' => array('generator'),
- 'generator' => array('collector')
- );
+ return $this->parsed['file'];
+ }
- $argv = $this->argv;
- array_map('trim', $argv);
+ public function generatorOnly() {
+ $this->parse();
- if (isset($argv[0][0]) && $argv[0][0] != '-') {
- array_shift($argv);
- }
+ return $this->parsed['generator'];
+ }
- foreach($options as $opt) {
- $this->parsed[$opt] = FALSE;
- }
+ public function collectorOnly() {
+ $this->parse();
+
+ return $this->parsed['collector'];
+ }
+
+ private function parse(): void {
+ $options = [
+ 'file', 'help', 'version', 'collector', 'generator', 'engines', 'enrichers', 'backends', 'skel', 'strip'
+ ];
+ $shortMap = [
+ 'f' => 'file',
+ 'h' => 'help',
+ 'c' => 'collector',
+ 'g' => 'generator',
+ 'v' => 'version'
+ ];
+ $valueOptions = [
+ 'file'
+ ];
+
+ $conflictingOptions = [
+ 'collector' => ['generator'],
+ 'generator' => ['collector']
+ ];
+
+ $argv = $this->argv;
+ \array_map('trim', $argv);
+
+ if (isset($argv[0][0]) && $argv[0][0] != '-') {
+ \array_shift($argv);
+ }
+
+ foreach ($options as $opt) {
+ $this->parsed[$opt] = false;
+ }
+
+ $valueExcepted = false;
+ $argName = '';
+
+ foreach ($argv as $arg) {
+ if ($arg[0] == '-') {
+ if (\strlen($arg) == 1) {
+ throw new CLIOptionsException(
+ \sprintf('Syntax error while parsing option (unnamed switch or option)')
+ );
+ }
+
+ if ($arg[1] == '-') {
+ $argName = \mb_substr($arg, 2);
- $valueExcepted = false;
- $argName = '';
- foreach($argv as $arg) {
- if ($arg[0] == '-') {
- if (strlen($arg) == 1) {
+ if (!\in_array($argName, $options)) {
throw new CLIOptionsException(
- sprintf('Syntax error while parsing option (unnamed switch or option)')
+ \sprintf('Option "%s" is not defined', $argName)
);
}
- if ($arg[1] == '-') {
- $argName = mb_substr($arg, 2);
- if (!in_array($argName, $options)) {
- throw new CLIOptionsException(
- sprintf('Option "%s" is not defined', $argName)
- );
- }
- } else {
- $argChar = mb_substr($arg, 1);
- if (!isset($shortMap[$argChar])) {
+ } else {
+ $argChar = \mb_substr($arg, 1);
+
+ if (!isset($shortMap[$argChar])) {
+ throw new CLIOptionsException(
+ \sprintf('Option "%s" is not defined', $argChar)
+ );
+ }
+ $argName = $shortMap[$argChar];
+ }
+
+ if (isset($conflictingOptions[$argName])) {
+ foreach ($conflictingOptions[$argName] as $conflict) {
+ if ($this->parsed[$conflict]) {
throw new CLIOptionsException(
- sprintf('Option "%s" is not defined', $argChar)
+ \sprintf('Option "%s" conflicts with already set option "%s"', $argName, $conflict)
);
}
- $argName = $shortMap[$argChar];
}
- if (isset($conflictingOptions[$argName])) {
- foreach($conflictingOptions[$argName] as $conflict) {
- if ($this->parsed[$conflict]) {
- throw new CLIOptionsException(
- sprintf('Option "%s" conflicts with already set option "%s"', $argName, $conflict)
- );
- }
- }
- }
- $this->parsed[$argName] = TRUE;
- $valueExcepted = in_array($argName, $valueOptions);
- continue;
}
- if (!$valueExcepted) {
- throw new CLIOptionsException(
- sprintf('Value for option "%s" provided but none expected', $argName)
- );
- }
- $this->parsed[$argName] = $arg;
+ $this->parsed[$argName] = true;
+ $valueExcepted = \in_array($argName, $valueOptions);
+
+ continue;
}
+ if (!$valueExcepted) {
+ throw new CLIOptionsException(
+ \sprintf('Value for option "%s" provided but none expected', $argName)
+ );
+ }
+ $this->parsed[$argName] = $arg;
}
-
}
-
}
diff -Nru phpdox-0.11.2/src/CLI.php phpdox-0.12.0/src/CLI.php
--- phpdox-0.11.2/src/CLI.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/CLI.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,255 +1,219 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * Exit codes:
- * 0 - No error
- * 1 - Execution Error
- * 3 - Parameter Error
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox {
-
- use TheSeer\fDOM\fDOMDocument;
- use TheSeer\fDOM\fDOMException;
-
- class CLI {
-
- const ExitOK = 0;
- const ExitExecError = 1;
- const ExitEnvError = 2;
- const ExitParamError = 3;
- const ExitConfigError = 4;
- const ExitException = 5;
-
- /**
- * @var Environment
- */
- private $environment;
-
- /**
- * @var Version
- */
- private $version;
-
- /**
- * Factory instance
- *
- * @var Factory
- */
- private $factory;
-
- /**
- * @param Environment $env
- * @param Factory $factory
- */
- public function __construct(Environment $env, Version $version, Factory $factory) {
- $this->environment = $env;
- $this->version = $version;
- $this->factory = $factory;
- }
+factory->getErrorHandler();
- $errorHandler->register();
-
- try {
-
- $this->environment->ensureFitness();
-
- if ($options->showHelp() === TRUE) {
- $this->showVersion();
- echo $options->getHelpScreen();
- return self::ExitOK;
- }
+use TheSeer\fDOM\fDOMException;
- if ($options->showVersion() === TRUE) {
- $this->showVersion();
- return self::ExitOK;
- }
+class CLI {
+ public const ExitOK = 0;
- if ($options->generateSkel() === TRUE) {
- $this->showSkeletonConfig($options->generateStrippedSkel());
- return self::ExitOK;
- }
+ public const ExitExecError = 1;
- $config = $this->loadConfig($options);
+ public const ExitEnvError = 2;
- if ($config->isSilentMode()) {
- $this->factory->activateSilentMode();
- } else {
- $this->showVersion();
- }
+ public const ExitParamError = 3;
- $logger = $this->factory->getLogger();
- $logger->log("Using config file '". $config->getConfigFile()->getPathname() . "'");
+ public const ExitConfigError = 4;
- $app = $this->factory->getApplication();
+ public const ExitException = 5;
- $defBootstrapFiles = new FileInfoCollection();
- $defBootstrapFiles->add(new FileInfo(__DIR__ . '/../bootstrap/backends.php'));
- $defBootstrapFiles->add(new FileInfo(__DIR__ . '/../bootstrap/enrichers.php'));
- $defBootstrapFiles->add(new FileInfo(__DIR__ . '/../bootstrap/engines.php'));
-
- $bootstrap = $app->runBootstrap($defBootstrapFiles);
- $bootstrap->load($config->getCustomBootstrapFiles(), false);
-
- if ($options->listEngines()) {
- $this->showVersion();
- $this->showList('engines', $bootstrap->getEngines());
- }
+ /**
+ * @var Environment
+ */
+ private $environment;
- if ($options->listEnrichers()) {
- $this->showVersion();
- $this->showList('enrichers', $bootstrap->getEnrichers());
- }
+ /**
+ * @var Version
+ */
+ private $version;
- if ($options->listBackends()) {
- $this->showVersion();
- $this->showList('backends', $bootstrap->getBackends());
- }
+ /**
+ * Factory instance
+ *
+ * @var Factory
+ */
+ private $factory;
- if ($options->listBackends() || $options->listEngines() || $options->listEnrichers()) {
- return self::ExitOK;
- }
+ public function __construct(Environment $env, Version $version, Factory $factory) {
+ $this->environment = $env;
+ $this->version = $version;
+ $this->factory = $factory;
+ }
- foreach($config->getProjects() as $projectName => $projectConfig) {
+ /**
+ * Main executor for CLI process.
+ */
+ public function run(CLIOptions $options) {
+ $errorHandler = $this->factory->getErrorHandler();
+ $errorHandler->register();
- $logger->log("Starting to process project '$projectName'");
+ try {
+ $this->environment->ensureFitness();
- $app->runConfigChangeDetection(
- $projectConfig->getWorkDirectory(),
- $config->getConfigFile()
- );
+ if ($options->showHelp() === true) {
+ $this->showVersion();
+ print $options->getHelpScreen();
- if (!$options->generatorOnly()) {
- $app->runCollector( $projectConfig->getCollectorConfig() );
- }
+ return self::ExitOK;
+ }
- if (!$options->collectorOnly()) {
- $app->runGenerator( $projectConfig->getGeneratorConfig() );
- }
+ if ($options->showVersion() === true) {
+ $this->showVersion();
- $logger->log("Processing project '$projectName' completed.");
+ return self::ExitOK;
+ }
- }
+ if ($options->generateSkel() === true) {
+ $this->showSkeletonConfig($options->generateStrippedSkel());
- $logger->buildSummary();
return self::ExitOK;
+ }
- } catch (EnvironmentException $e) {
+ $config = $this->loadConfig($options);
+
+ if ($config->isSilentMode()) {
+ $this->factory->activateSilentMode();
+ } else {
$this->showVersion();
- fwrite(STDERR, 'Sorry, but your PHP environment is currently not able to run phpDox due to');
- fwrite(STDERR, "\nthe following issue(s):\n\n" . $e->getMessage() . "\n\n");
- fwrite(STDERR, "Please adjust your PHP configuration and try again.\n\n");
- return self::ExitEnvError;
- } catch (CLIOptionsException $e) {
- $this->showVersion();
- fwrite(STDERR, $e->getMessage()."\n\n");
- fwrite(STDERR, $options->getHelpScreen());
- return self::ExitParamError;
- } catch (ConfigLoaderException $e) {
- $this->showVersion();
- fwrite(STDERR, "\nAn error occured while trying to load the configuration file:\n\n" . $e->getMessage(). "\n\n");
- if ($e->getCode() == ConfigLoaderException::NeitherCandidateExists) {
- fwrite(STDERR, "Using --skel might get you started.\n\n");
- }
- return self::ExitConfigError;
- } catch (ConfigException $e) {
- fwrite(STDERR, "\nYour configuration seems to be corrupted:\n\n\t" . $e->getMessage()."\n\nPlease verify your configuration xml file.\n\n");
- return self::ExitConfigError;
- } catch (ApplicationException $e) {
- fwrite(STDERR, "\nAn application error occured while processing:\n\n\t" . $e->getMessage()."\n\nPlease verify your configuration.\n\n");
- return self::ExitExecError;
- } catch (\Exception $e) {
- if ($e instanceof fDOMException) {
- $e->toggleFullMessage(TRUE);
- }
+ }
+
+ $logger = $this->factory->getLogger();
+ $logger->log("Using config file '" . $config->getConfigFile()->getPathname() . "'");
+
+ $app = $this->factory->getApplication();
+
+ $defBootstrapFiles = new FileInfoCollection();
+ $defBootstrapFiles->add(new FileInfo(__DIR__ . '/../bootstrap/backends.php'));
+ $defBootstrapFiles->add(new FileInfo(__DIR__ . '/../bootstrap/enrichers.php'));
+ $defBootstrapFiles->add(new FileInfo(__DIR__ . '/../bootstrap/engines.php'));
+
+ $bootstrap = $app->runBootstrap($defBootstrapFiles);
+ $bootstrap->load($config->getCustomBootstrapFiles(), false);
+
+ if ($options->listEngines()) {
$this->showVersion();
- $errorHandler->handleException($e);
- return self::ExitException;
- } catch (\Throwable $e) {
+ $this->showList('engines', $bootstrap->getEngines());
+ }
+
+ if ($options->listEnrichers()) {
$this->showVersion();
- $errorHandler->handleException($e);
- return self::ExitException;
+ $this->showList('enrichers', $bootstrap->getEnrichers());
}
- }
- /**
- * Helper to output version information.
- */
- private function showVersion() {
- static $shown = FALSE;
- if ($shown) {
- return;
+ if ($options->listBackends()) {
+ $this->showVersion();
+ $this->showList('backends', $bootstrap->getBackends());
}
- $shown = TRUE;
- echo $this->version->getInfoString() . "\n\n";
- }
- private function showSkeletonConfig($strip) {
- $skel = $this->factory->getConfigSkeleton();
- echo $strip ? $skel->renderStripped() : $skel->render();
- }
+ if ($options->listBackends() || $options->listEngines() || $options->listEnrichers()) {
+ return self::ExitOK;
+ }
+
+ foreach ($config->getProjects() as $projectName => $projectConfig) {
+ $logger->log("Starting to process project '$projectName'");
+
+ $app->runConfigChangeDetection(
+ $projectConfig->getWorkDirectory(),
+ $config->getConfigFile()
+ );
+
+ if (!$options->generatorOnly()) {
+ $app->runCollector($projectConfig->getCollectorConfig());
+ }
- private function showList($title, Array $list) {
- echo "\nThe following $title are registered:\n\n";
- foreach($list as $name => $desc) {
- printf(" %s \t %s\n", $name, $desc);
+ if (!$options->collectorOnly()) {
+ $app->runGenerator($projectConfig->getGeneratorConfig());
+ }
+
+ $logger->log("Processing project '$projectName' completed.");
+ }
+
+ $logger->buildSummary();
+
+ return self::ExitOK;
+ } catch (EnvironmentException $e) {
+ $this->showVersion();
+ \fwrite(\STDERR, 'Sorry, but your PHP environment is currently not able to run phpDox due to');
+ \fwrite(\STDERR, "\nthe following issue(s):\n\n" . $e->getMessage() . "\n\n");
+ \fwrite(\STDERR, "Please adjust your PHP configuration and try again.\n\n");
+
+ return self::ExitEnvError;
+ } catch (CLIOptionsException $e) {
+ $this->showVersion();
+ \fwrite(\STDERR, $e->getMessage() . "\n\n");
+ \fwrite(\STDERR, $options->getHelpScreen());
+
+ return self::ExitParamError;
+ } catch (ConfigLoaderException $e) {
+ $this->showVersion();
+ \fwrite(\STDERR, "\nAn error occured while trying to load the configuration file:\n\n" . $e->getMessage() . "\n\n");
+
+ if ($e->getCode() == ConfigLoaderException::NeitherCandidateExists) {
+ \fwrite(\STDERR, "Using --skel might get you started.\n\n");
}
- echo "\n\n";
- }
- /**
- * @param CLIOptions $options
- *
- * @return GlobalConfig
- * @throws ConfigLoaderException
- */
- private function loadConfig(CLIOptions $options) {
- $cfgLoader = $this->factory->getConfigLoader();
- $cfgFile = $options->configFile();
- if ($cfgFile != '') {
- return $cfgLoader->load($cfgFile);
+ return self::ExitConfigError;
+ } catch (ConfigException $e) {
+ \fwrite(\STDERR, "\nYour configuration seems to be corrupted:\n\n\t" . $e->getMessage() . "\n\nPlease verify your configuration xml file.\n\n");
+
+ return self::ExitConfigError;
+ } catch (ApplicationException $e) {
+ \fwrite(\STDERR, "\nAn application error occured while processing:\n\n\t" . $e->getMessage() . "\n\nPlease verify your configuration.\n\n");
+
+ return self::ExitExecError;
+ } catch (\Exception $e) {
+ if ($e instanceof fDOMException) {
+ $e->toggleFullMessage(true);
}
- return $cfgLoader->autodetect();
+ $this->showVersion();
+ $errorHandler->handleException($e);
+
+ return self::ExitException;
+ } catch (\Throwable $e) {
+ $this->showVersion();
+ $errorHandler->handleException($e);
+
+ return self::ExitException;
+ }
+ }
+
+ /**
+ * Helper to output version information.
+ */
+ private function showVersion(): void {
+ static $shown = false;
+
+ if ($shown) {
+ return;
}
+ $shown = true;
+ print $this->version->getInfoString() . "\n\n";
+ }
+ private function showSkeletonConfig($strip): void {
+ $skel = $this->factory->getConfigSkeleton();
+ print $strip ? $skel->renderStripped() : $skel->render();
}
+ private function showList($title, array $list): void {
+ print "\nThe following $title are registered:\n\n";
+
+ foreach ($list as $name => $desc) {
+ \printf(" %s \t %s\n", $name, $desc);
+ }
+ print "\n\n";
+ }
+
+ /**
+ * @throws ConfigLoaderException
+ */
+ private function loadConfig(CLIOptions $options): GlobalConfig {
+ $cfgLoader = $this->factory->getConfigLoader();
+ $cfgFile = $options->configFile();
+
+ if ($cfgFile != '') {
+ return $cfgLoader->load($cfgFile);
+ }
+
+ return $cfgLoader->autodetect();
+ }
}
diff -Nru phpdox-0.11.2/src/collector/backend/BackendInterface.php phpdox-0.12.0/src/collector/backend/BackendInterface.php
--- phpdox-0.11.2/src/collector/backend/BackendInterface.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/collector/backend/BackendInterface.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,54 +1,11 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
-namespace TheSeer\phpDox\Collector\Backend {
- use TheSeer\phpDox\Collector\SourceFile;
+
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
-namespace TheSeer\phpDox\Collector\Backend {
+master = $factory;
- }
+ public function __construct(MasterFactory $factory) {
+ $this->master = $factory;
+ }
- public function getInstanceFor($type) {
- switch ($type) {
- case 'parser': {
+ public function getInstanceFor($type) {
+ switch ($type) {
+ case 'parser':
+ {
return new PHPParser(
$this->master->getDocblockParser(),
$this->master->getErrorHandler()
);
}
- default: {
+ default:
+ {
throw new FactoryException("'$type' is not a known backend.");
}
- }
}
-
}
+}
- class FactoryException extends \Exception {}
-
+class FactoryException extends \Exception {
}
diff -Nru phpdox-0.11.2/src/collector/backend/ParseErrorException.php phpdox-0.12.0/src/collector/backend/ParseErrorException.php
--- phpdox-0.11.2/src/collector/backend/ParseErrorException.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/collector/backend/ParseErrorException.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,44 +1,8 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
-namespace TheSeer\phpDox\Collector\Backend {
+
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
-namespace TheSeer\phpDox\Collector\Backend {
+
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
+ * @var \PhpParser\Parser
*/
-namespace TheSeer\phpDox\Collector\Backend {
+ private $parser;
- use TheSeer\phpDox\Collector\SourceFile;
- use TheSeer\phpDox\DocBlock\Parser as DocblockParser;
- use PhpParser\ParserFactory;
- use TheSeer\phpDox\ErrorHandler;
+ /**
+ * @var DocblockParser
+ */
+ private $docblockParser;
/**
- *
+ * @var ErrorHandler
*/
- class PHPParser implements BackendInterface {
+ private $errorHandler;
- /**
- * @var \PhpParser\Parser
- */
- private $parser = NULL;
-
- /**
- * @var DocblockParser
- */
- private $docblockParser = NULL;
-
- /**
- * @var ErrorHandler
- */
- private $errorHandler;
-
- /**
- * @param DocblockParser $parser
- */
- public function __construct(DocblockParser $parser, ErrorHandler $errorHandler) {
- $this->docblockParser = $parser;
- $this->errorHandler = $errorHandler;
- }
+ public function __construct(DocblockParser $parser, ErrorHandler $errorHandler) {
+ $this->docblockParser = $parser;
+ $this->errorHandler = $errorHandler;
+ }
- /**
- *
- * @param SourceFile $sourceFile
- * @param bool $publicOnly
- *
- * @throws ParseErrorException
- * @return ParseResult
- */
- public function parse(SourceFile $sourceFile, $publicOnly) {
-
- try {
- $result = new ParseResult($sourceFile);
- $parser = $this->getParserInstance();
- $nodes = $parser->parse($sourceFile->getSource());
- if (!$nodes) {
- throw new ParseErrorException("Parser didn't return any nodes", ParseErrorException::GeneralParseError);
- }
- $this->getTraverserInstance($result, $publicOnly)->traverse($nodes);
- return $result;
- } catch (\Exception $e) {
- $this->errorHandler->clearLastError();
- throw new ParseErrorException('Internal Error during parsing', ParseErrorException::GeneralParseError, $e);
- }
- }
+ /**
+ * @param bool $publicOnly
+ *
+ * @throws ParseErrorException
+ */
+ public function parse(SourceFile $sourceFile, $publicOnly): ParseResult {
+ try {
+ $result = new ParseResult($sourceFile);
+ $parser = $this->getParserInstance();
+ $nodes = $parser->parse($sourceFile->getSource());
- /**
- * @return \PhpParser\Parser
- */
- private function getParserInstance() {
- if ($this->parser === NULL) {
- $this->parser = (new ParserFactory)->create(ParserFactory::PREFER_PHP7, new CustomLexer());
+ if (!$nodes) {
+ throw new ParseErrorException("Parser didn't return any nodes", ParseErrorException::GeneralParseError);
}
- return $this->parser;
+ $this->getTraverserInstance($result, $publicOnly)->traverse($nodes);
+
+ return $result;
+ } catch (\Exception $e) {
+ $this->errorHandler->clearLastError();
+
+ throw new ParseErrorException('Internal Error during parsing', ParseErrorException::GeneralParseError, $e);
}
+ }
- /**
- * @param ParseResult $result
- * @param bool $publicOnly
- *
- * @return \PhpParser\NodeTraverser
- */
- private function getTraverserInstance(ParseResult $result, $publicOnly) {
- $traverser = new \PhpParser\NodeTraverser();
- $traverser->addVisitor(new \PhpParser\NodeVisitor\NameResolver());
- if ($publicOnly === true) {
- $traverser->addVisitor(new PublicOnlyVisitor());
- }
- $traverser->addVisitor(new UnitCollectingVisitor($this->docblockParser, $result));
- return $traverser;
+ private function getParserInstance(): \PhpParser\Parser {
+ if ($this->parser === null) {
+ $this->parser = (new ParserFactory)->create(ParserFactory::PREFER_PHP7, new CustomLexer());
}
+
+ return $this->parser;
}
+ /**
+ * @param bool $publicOnly
+ */
+ private function getTraverserInstance(ParseResult $result, $publicOnly): \PhpParser\NodeTraverser {
+ $traverser = new \PhpParser\NodeTraverser();
+ $traverser->addVisitor(new \PhpParser\NodeVisitor\NameResolver());
+
+ if ($publicOnly === true) {
+ $traverser->addVisitor(new PublicOnlyVisitor());
+ }
+ $traverser->addVisitor(new UnitCollectingVisitor($this->docblockParser, $result));
+
+ return $traverser;
+ }
}
diff -Nru phpdox-0.11.2/src/collector/backend/parser/PublicOnlyVisitor.php phpdox-0.12.0/src/collector/backend/parser/PublicOnlyVisitor.php
--- phpdox-0.11.2/src/collector/backend/parser/PublicOnlyVisitor.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/collector/backend/parser/PublicOnlyVisitor.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,62 +1,21 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
-namespace TheSeer\phpDox\Collector\Backend {
+isPublic()) {
-
- return new NodeType\Nop();
- }
-
- return $node;
+ return new NodeType\Nop();
}
+ return $node;
}
}
diff -Nru phpdox-0.11.2/src/collector/backend/parser/UnitCollectingVisitor.php phpdox-0.12.0/src/collector/backend/parser/UnitCollectingVisitor.php
--- phpdox-0.11.2/src/collector/backend/parser/UnitCollectingVisitor.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/collector/backend/parser/UnitCollectingVisitor.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,539 +1,530 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
+ * @var \TheSeer\phpDox\DocBlock\Parser
*/
-namespace TheSeer\phpDox\Collector\Backend {
+ private $docBlockParser;
- use PhpParser\Node\Expr;
- use PhpParser\Node\Expr\Array_;
- use PhpParser\Node\Expr\BinaryOp;
- use PhpParser\Node\Expr\ClassConstFetch;
- use PhpParser\Node\Expr\ConstFetch;
- use PhpParser\Node\Expr\UnaryMinus;
- use PhpParser\Node\Expr\UnaryPlus;
- use PhpParser\Node\Name\FullyQualified;
- use PhpParser\Node\NullableType;
- use PhpParser\Node\Scalar\DNumber;
- use PhpParser\Node\Scalar\LNumber;
- use PhpParser\Node\Scalar\MagicConst;
- use PhpParser\Node\Scalar\String_;
- use TheSeer\phpDox\Collector\AbstractUnitObject;
- use TheSeer\phpDox\Collector\AbstractVariableObject;
- use TheSeer\phpDox\Collector\InlineComment;
- use TheSeer\phpDox\Collector\MethodObject;
- use TheSeer\phpDox\DocBlock\Parser as DocBlockParser;
- use PhpParser\NodeVisitorAbstract;
- use PhpParser\Node\Stmt as NodeType;
+ /**
+ * @var array
+ */
+ private $aliasMap = [];
/**
- *
+ * @var string
*/
- class UnitCollectingVisitor extends NodeVisitorAbstract {
+ private $namespace = '\\';
- /**
- * @var \TheSeer\phpDox\DocBlock\Parser
- */
- private $docBlockParser;
-
- /**
- * @var array
- */
- private $aliasMap = array();
-
- /**
- * @var string
- */
- private $namespace = '\\';
-
- /**
- * @var ParseResult
- */
- private $result;
-
- /**
- * @var AbstractUnitObject
- */
- private $unit;
-
- private $modifier = array(
- NodeType\Class_::MODIFIER_PUBLIC => 'public',
- NodeType\Class_::MODIFIER_PROTECTED => 'protected',
- NodeType\Class_::MODIFIER_PRIVATE => 'private',
- );
+ /**
+ * @var ParseResult
+ */
+ private $result;
- /**
- * @param \TheSeer\phpDox\DocBlock\Parser $parser
- * @param ParseResult $result
- */
- public function __construct(DocBlockParser $parser, ParseResult $result) {
- $this->docBlockParser = $parser;
- $this->result = $result;
- }
-
- /**
- * @param \PhpParser\Node $node
- *
- * @return int|null|\PhpParser\Node|void
- */
- public function enterNode(\PhpParser\Node $node) {
- if ($node instanceof NodeType\Namespace_ && $node->name != NULL) {
- $this->namespace = implode('\\', $node->name->parts);
- $this->aliasMap['::context'] = $this->namespace;
- } else if ($node instanceof NodeType\UseUse) {
- $this->aliasMap[$node->alias] = implode('\\', $node->name->parts);
- } else if ($node instanceof NodeType\Class_) {
- $this->aliasMap['::unit'] = (string)$node->namespacedName;
- $this->unit = $this->result->addClass((string)$node->namespacedName);
- $this->processUnit($node);
- return;
- } else if ($node instanceof NodeType\Interface_) {
- $this->aliasMap['::unit'] = (string)$node->namespacedName;
- $this->unit = $this->result->addInterface((string)$node->namespacedName);
- $this->processUnit($node);
- return;
- } else if ($node instanceof NodeType\Trait_) {
- $this->aliasMap['::unit'] = (string)$node->namespacedName;
- $this->unit = $this->result->addTrait((string)$node->namespacedName);
- $this->processUnit($node);
- return;
- } else if ($node instanceof NodeType\Property) {
- $this->processProperty($node);
- return;
- } else if ($node instanceof NodeType\ClassMethod) {
- $this->processMethod($node);
- return;
- } elseif ($node instanceof NodeType\ClassConst) {
- $this->processClassConstant($node);
- } elseif ($node instanceof NodeType\TraitUse) {
- $this->processTraitUse($node);
- }
- }
+ /**
+ * @var AbstractUnitObject
+ */
+ private $unit;
- /**
- * @param \PhpParser\Node $node
- *
- * @return false|int|null|\PhpParser\Node|\PhpParser\Node[]|void
- */
- public function leaveNode(\PhpParser\Node $node) {
- if ($node instanceof NodeType\Class_
- || $node instanceof NodeType\Interface_
- || $node instanceof NodeType\Trait_) {
- $this->unit = NULL;
- return;
- }
- }
+ private $modifier = [
+ NodeType\Class_::MODIFIER_PUBLIC => 'public',
+ NodeType\Class_::MODIFIER_PROTECTED => 'protected',
+ NodeType\Class_::MODIFIER_PRIVATE => 'private',
+ ];
+
+ public function __construct(DocBlockParser $parser, ParseResult $result) {
+ $this->docBlockParser = $parser;
+ $this->result = $result;
+ }
- /**
- * @param $node
- */
- private function processUnit($node) {
- $this->unit->setStartLine($node->getAttribute('startLine'));
- $this->unit->setEndLine($node->getAttribute('endLine'));
- if ($node instanceof NodeType\Class_) {
- $this->unit->setAbstract($node->isAbstract());
- $this->unit->setFinal($node->isFinal());
+ /**
+ * @return null|int|\PhpParser\Node|void
+ */
+ public function enterNode(\PhpParser\Node $node) {
+ if ($node instanceof NodeType\Namespace_ && $node->name != null) {
+ $this->namespace = \implode('\\', $node->name->parts);
+ $this->aliasMap['::context'] = $this->namespace;
+ } else {
+ if ($node instanceof NodeType\UseUse) {
+ $this->aliasMap[$node->getAlias()->name] = \implode('\\', $node->name->parts);
} else {
- $this->unit->setAbstract(FALSE);
- $this->unit->setFinal(FALSE);
- }
-
- $docComment = $node->getDocComment();
- if ($docComment !== NULL) {
- $block = $this->docBlockParser->parse($docComment, $this->aliasMap);
- $this->unit->setDocBlock($block);
- }
+ if ($node instanceof NodeType\Class_) {
+ $this->aliasMap['::unit'] = (string)$node->namespacedName;
+ $this->unit = $this->result->addClass((string)$node->namespacedName);
+ $this->processUnit($node);
- if ($node->getType() != 'Stmt_Trait' && $node->extends !== NULL) {
- if (is_array($node->extends)) {
- $extendsArray = $node->extends;
- foreach ($extendsArray as $extends) {
- $this->unit->addExtends(implode('\\', $extends->parts));
- }
- } else {
- $this->unit->addExtends(implode('\\', $node->extends->parts));
+ return;
}
- }
- if ($node->getType() === 'Stmt_Class') {
- foreach($node->implements as $implements) {
- $this->unit->addImplements(implode('\\', $implements->parts));
+ if ($node instanceof NodeType\Interface_) {
+ $this->aliasMap['::unit'] = (string)$node->namespacedName;
+ $this->unit = $this->result->addInterface((string)$node->namespacedName);
+ $this->processUnit($node);
+
+ return;
}
- }
- }
- private function processTraitUse(NodeType\TraitUse $node) {
- foreach($node->traits as $trait) {
- $traitUse = $this->unit->addTrait( (string)$trait );
- $traitUse->setStartLine($node->getAttribute('startLine'));
- $traitUse->setEndLine($node->getAttribute('endLine'));
- }
+ if ($node instanceof NodeType\Trait_) {
+ $this->aliasMap['::unit'] = (string)$node->namespacedName;
+ $this->unit = $this->result->addTrait((string)$node->namespacedName);
+ $this->processUnit($node);
- foreach($node->adaptations as $adaptation) {
- if ($adaptation instanceof NodeType\TraitUseAdaptation\Alias) {
- if ($adaptation->trait instanceof FullyQualified) {
- $traitUse = $this->getTraitUse((string)$adaptation->trait);
- } else if (count($node->traits) === 1) {
- $traitUse = $this->getTraitUse( (string)$node->traits[0]);
- } else {
- $traitUse = $this->unit->getAmbiguousTraitUse();
- }
+ return;
+ }
- $traitUse->addAlias(
- $adaptation->method,
- $adaptation->newName,
- $adaptation->newModifier ? $this->modifier[$adaptation->newModifier] : NULL
- );
+ if ($node instanceof NodeType\Property) {
+ $this->processProperty($node);
- continue;
+ return;
}
- if ($adaptation instanceof NodeType\TraitUseAdaptation\Precedence) {
- $traitUse = $this->getTraitUse((string)$adaptation->insteadof[0]);
- $traitUse->addExclude($adaptation->method);
+ if ($node instanceof NodeType\ClassMethod) {
+ $this->processMethod($node);
- continue;
+ return;
}
- throw new ParseErrorException(
- sprintf('Unexpected adaption type %s', get_class($adaptation)),
- ParseErrorException::UnexpectedExpr
- );
+ if ($node instanceof NodeType\ClassConst) {
+ $this->processClassConstant($node);
+ } elseif ($node instanceof NodeType\TraitUse) {
+ $this->processTraitUse($node);
+ }
}
-
}
+ }
- private function getTraitUse($traitName) {
- if (!$this->unit->usesTrait($traitName)) {
- throw new ParseErrorException(
- sprintf('Referenced trait "%s" not used', $traitName),
- ParseErrorException::GeneralParseError
- );
- }
- return $this->unit->getTraitUse($traitName);
+ /**
+ * @return null|false|int|\PhpParser\Node|\PhpParser\Node[]|void
+ */
+ public function leaveNode(\PhpParser\Node $node) {
+ if ($node instanceof NodeType\Class_
+ || $node instanceof NodeType\Interface_
+ || $node instanceof NodeType\Trait_) {
+ $this->unit = null;
+
+ return;
}
+ }
- /**
- * @param NodeType\ClassMethod $node
- */
- private function processMethod(NodeType\ClassMethod $node) {
-
- /** @var $method \TheSeer\phpDox\Collector\MethodObject */
- $method = $this->unit->addMethod($node->name);
- $method->setStartLine($node->getAttribute('startLine'));
- $method->setEndLine($node->getAttribute('endLine'));
- $method->setAbstract($node->isAbstract());
- $method->setFinal($node->isFinal());
- $method->setStatic($node->isStatic());
-
- $this->processMethodReturnType($method, $node->getReturnType());
-
- $visibility = 'public';
- if ($node->isPrivate()) {
- $visibility = 'private';
- } elseif ($node->isProtected()) {
- $visibility = 'protected';
- }
- $method->setVisibility($visibility);
+ /**
+ * @param $node
+ */
+ private function processUnit($node): void {
+ $this->unit->setStartLine($node->getAttribute('startLine'));
+ $this->unit->setEndLine($node->getAttribute('endLine'));
- $docComment = $node->getDocComment();
- if ($docComment !== NULL) {
- $block = $this->docBlockParser->parse($docComment, $this->aliasMap);
- $method->setDocBlock($block);
- }
+ if ($node instanceof NodeType\Class_) {
+ $this->unit->setAbstract($node->isAbstract());
+ $this->unit->setFinal($node->isFinal());
+ } else {
+ $this->unit->setAbstract(false);
+ $this->unit->setFinal(false);
+ }
- $this->processMethodParams($method, $node->params);
+ $docComment = $node->getDocComment();
- if ($node->stmts) {
- $this->processInlineComments($method, $node->stmts);
- }
+ if ($docComment !== null) {
+ $block = $this->docBlockParser->parse($docComment, $this->aliasMap);
+ $this->unit->setDocBlock($block);
}
- private function processMethodReturnType(MethodObject $method, $returnType) {
- if ($returnType === null) {
- return;
- }
+ if ($node->getType() != 'Stmt_Trait' && $node->extends !== null) {
+ if (\is_array($node->extends)) {
+ $extendsArray = $node->extends;
- if (in_array($returnType, ['void','float','int','string','bool','callable','array'])) {
- $returnTypeObject = $method->setReturnType($returnType);
- $returnTypeObject->setNullable(false);
- return;
+ foreach ($extendsArray as $extends) {
+ $this->unit->addExtends(\implode('\\', $extends->parts));
+ }
+ } else {
+ $this->unit->addExtends(\implode('\\', $node->extends->parts));
}
+ }
- if ($returnType instanceof \PhpParser\Node\Name\FullyQualified) {
- $returnTypeObject = $method->setReturnType($returnType->toString());
- $returnTypeObject->setNullable(false);
- return;
+ if ($node->getType() === 'Stmt_Class') {
+ foreach ($node->implements as $implements) {
+ $this->unit->addImplements(\implode('\\', $implements->parts));
}
+ }
+ }
+
+ private function processTraitUse(NodeType\TraitUse $node): void {
+ foreach ($node->traits as $trait) {
+ $traitUse = $this->unit->addTrait((string)$trait);
+ $traitUse->setStartLine($node->getAttribute('startLine'));
+ $traitUse->setEndLine($node->getAttribute('endLine'));
+ }
- if ($returnType instanceof NullableType) {
- if ((string)$returnType->type === 'self') {
- $returnTypeObject = $method->setReturnType($this->unit->getName());
+ foreach ($node->adaptations as $adaptation) {
+ if ($adaptation instanceof NodeType\TraitUseAdaptation\Alias) {
+ if ($adaptation->trait instanceof FullyQualified) {
+ $traitUse = $this->getTraitUse((string)$adaptation->trait);
} else {
- $returnTypeObject = $method->setReturnType($returnType->type);
+ if (\count($node->traits) === 1) {
+ $traitUse = $this->getTraitUse((string)$node->traits[0]);
+ } else {
+ $traitUse = $this->unit->getAmbiguousTraitUse();
+ }
}
- $returnTypeObject->setNullable(true);
- return;
- }
- if ($returnType instanceof \PhpParser\Node\Name) {
- $returnTypeObject = $method->setReturnType(
- $this->unit->getName()
+ $traitUse->addAlias(
+ $adaptation->method,
+ $adaptation->newName,
+ $adaptation->newModifier ? $this->modifier[$adaptation->newModifier] : null
);
- $returnTypeObject->setNullable(false);
- return;
+
+ continue;
+ }
+
+ if ($adaptation instanceof NodeType\TraitUseAdaptation\Precedence) {
+ $traitUse = $this->getTraitUse((string)$adaptation->insteadof[0]);
+ $traitUse->addExclude($adaptation->method);
+
+ continue;
}
throw new ParseErrorException(
- sprintf("Unexpected return type definition %s",
- get_class($returnType)
- ),ParseErrorException::UnexpectedExpr);
+ \sprintf('Unexpected adaption type %s', \get_class($adaptation)),
+ ParseErrorException::UnexpectedExpr
+ );
+ }
+ }
+
+ private function getTraitUse($traitName) {
+ if (!$this->unit->usesTrait($traitName)) {
+ throw new ParseErrorException(
+ \sprintf('Referenced trait "%s" not used', $traitName),
+ ParseErrorException::GeneralParseError
+ );
+ }
+
+ return $this->unit->getTraitUse($traitName);
+ }
+
+ private function processMethod(NodeType\ClassMethod $node): void {
+
+ /** @var $method \TheSeer\phpDox\Collector\MethodObject */
+ $method = $this->unit->addMethod($node->name);
+ $method->setStartLine($node->getAttribute('startLine'));
+ $method->setEndLine($node->getAttribute('endLine'));
+ $method->setAbstract($node->isAbstract());
+ $method->setFinal($node->isFinal());
+ $method->setStatic($node->isStatic());
+
+ $this->processMethodReturnType($method, $node->getReturnType());
+
+ $visibility = 'public';
+
+ if ($node->isPrivate()) {
+ $visibility = 'private';
+ } elseif ($node->isProtected()) {
+ $visibility = 'protected';
+ }
+ $method->setVisibility($visibility);
+
+ $docComment = $node->getDocComment();
+
+ if ($docComment !== null) {
+ $block = $this->docBlockParser->parse($docComment, $this->aliasMap);
+ $method->setDocBlock($block);
+ }
+
+ $this->processMethodParams($method, $node->params);
+
+ if ($node->stmts) {
+ $this->processInlineComments($method, $node->stmts);
+ }
+ }
+
+ private function processMethodReturnType(MethodObject $method, $returnType): void {
+ if ($returnType === null) {
+ return;
+ }
+
+ if (\in_array($returnType, ['void', 'float', 'int', 'string', 'bool', 'callable', 'array'])) {
+ $returnTypeObject = $method->setReturnType($returnType);
+ $returnTypeObject->setNullable(false);
+
+ return;
+ }
+
+ if ($returnType instanceof \PhpParser\Node\Name\FullyQualified) {
+ $returnTypeObject = $method->setReturnType($returnType->toString());
+ $returnTypeObject->setNullable(false);
+
+ return;
+ }
+
+ if ($returnType instanceof NullableType) {
+ if ((string)$returnType->type === 'self') {
+ $returnTypeObject = $method->setReturnType($this->unit->getName());
+ } else {
+ $returnTypeObject = $method->setReturnType($returnType->type);
+ }
+ $returnTypeObject->setNullable(true);
+
+ return;
}
- private function processInlineComments(MethodObject $method, array $stmts) {
- foreach($stmts as $stmt) {
- if ($stmt->hasAttribute('comments')) {
- foreach($stmt->getAttribute('comments') as $comment) {
- $inline = new InlineComment($comment->getLine(), $comment->getText());
- if ($inline->getCount() != 0) {
- $method->addInlineComment($inline);
- }
+ if ($returnType instanceof \PhpParser\Node\Name) {
+ $returnTypeObject = $method->setReturnType(
+ $this->unit->getName()
+ );
+ $returnTypeObject->setNullable(false);
+
+ return;
+ }
+
+ throw new ParseErrorException(
+ \sprintf(
+ 'Unexpected return type definition %s',
+ \get_class($returnType)
+ ),
+ ParseErrorException::UnexpectedExpr
+ );
+ }
+
+ private function processInlineComments(MethodObject $method, array $stmts): void {
+ foreach ($stmts as $stmt) {
+ if ($stmt->hasAttribute('comments')) {
+ foreach ($stmt->getAttribute('comments') as $comment) {
+ $inline = new InlineComment($comment->getLine(), $comment->getText());
+
+ if ($inline->getCount() != 0) {
+ $method->addInlineComment($inline);
}
}
}
}
+ }
- /**
- * @param MethodObject $method
- * @param array $params
- */
- private function processMethodParams(MethodObject $method, array $params) {
- foreach($params as $param) {
- /** @var $param \PhpParser\Node\Param */
- $parameter = $method->addParameter($param->name);
- $parameter->setByReference($param->byRef);
- $this->setVariableType($parameter, $param->type);
- $this->setVariableDefaultValue($parameter, $param->default);
- }
+ private function processMethodParams(MethodObject $method, array $params): void {
+ foreach ($params as $param) {
+ /** @var $param \PhpParser\Node\Param */
+ $parameter = $method->addParameter($param->var->name);
+ $parameter->setByReference($param->byRef);
+ $this->setVariableType($parameter, $param->type);
+ $this->setVariableDefaultValue($parameter, $param->default);
}
+ }
- private function processClassConstant(NodeType\ClassConst $node) {
- $constNode = $node->consts[0];
- $const = $this->unit->addConstant($constNode->name);
-
- $resolved = $this->resolveExpressionValue($constNode->value);
-
- $const->setValue($resolved['value']);
- if (isset($resolved['constant'])) {
- $const->setConstantReference($resolved['constant']);
- }
- if (isset($resolved['type'])) {
- $const->setType($resolved['type']);
- }
+ private function processClassConstant(NodeType\ClassConst $node): void {
+ $constNode = $node->consts[0];
+ $const = $this->unit->addConstant($constNode->name);
- $docComment = $node->getDocComment();
- if ($docComment !== NULL) {
- $block = $this->docBlockParser->parse($docComment, $this->aliasMap);
- $const->setDocBlock($block);
- }
+ $resolved = $this->resolveExpressionValue($constNode->value);
+
+ $const->setValue($resolved['value']);
+
+ if (isset($resolved['constant'])) {
+ $const->setConstantReference($resolved['constant']);
}
- private function processProperty(NodeType\Property $node) {
- $property = $node->props[0];
- $member = $this->unit->addMember($property->name);
- if ($node->props[0]->default) {
- $this->setVariableDefaultValue($member, $node->props[0]->default);
- }
- $visibility = 'public';
- if ($node->isPrivate()) {
- $visibility = 'private';
- } elseif ($node->isProtected()) {
- $visibility = 'protected';
- }
- $member->setVisibility($visibility);
- $member->setStatic($node->isStatic());
- $docComment = $node->getDocComment();
- if ($docComment !== NULL) {
- $block = $this->docBlockParser->parse($docComment, $this->aliasMap);
- $member->setDocBlock($block);
- }
- $member->setLine($node->getLine());
+ if (isset($resolved['type'])) {
+ $const->setType($resolved['type']);
}
- private function setVariableType(AbstractVariableObject $variable, $type = NULL) {
- if ($type instanceof NullableType) {
- $variable->setNullable(true);
- $type = $type->type;
- }
+ $docComment = $node->getDocComment();
- if ($type === NULL) {
- $variable->setType('{unknown}');
- return;
- }
+ if ($docComment !== null) {
+ $block = $this->docBlockParser->parse($docComment, $this->aliasMap);
+ $const->setDocBlock($block);
+ }
+ }
- if ($variable->isInternalType($type)) {
- $variable->setType($type);
- return;
- }
+ private function processProperty(NodeType\Property $node): void {
+ $property = $node->props[0];
+ $member = $this->unit->addMember($property->name);
- if ($type instanceof \PhpParser\Node\Name\FullyQualified) {
- $variable->setType( (string)$type);
- return;
- }
+ if ($node->props[0]->default) {
+ $this->setVariableDefaultValue($member, $node->props[0]->default);
+ }
+ $visibility = 'public';
- $type = (string)$type;
- if (isset($this->aliasMap[$type])) {
- $type = $this->aliasMap[$type];
- } elseif ($type[0]!=='\\') {
- $type = $this->namespace . '\\' . $type;
- }
+ if ($node->isPrivate()) {
+ $visibility = 'private';
+ } elseif ($node->isProtected()) {
+ $visibility = 'protected';
+ }
+ $member->setVisibility($visibility);
+ $member->setStatic($node->isStatic());
+ $docComment = $node->getDocComment();
+
+ if ($docComment !== null) {
+ $block = $this->docBlockParser->parse($docComment, $this->aliasMap);
+ $member->setDocBlock($block);
+ }
+ $member->setLine($node->getLine());
+ }
+
+ private function setVariableType(AbstractVariableObject $variable, $type = null): void {
+ if ($type instanceof NullableType) {
+ $variable->setNullable(true);
+ $type = $type->type;
+ }
+
+ if ($type === null) {
+ $variable->setType('{unknown}');
+
+ return;
+ }
+
+ if ($variable->isInternalType($type)) {
$variable->setType($type);
+
+ return;
}
- private function resolveExpressionValue(Expr $expr) {
- if ($expr instanceof String_) {
- return array(
- 'type' => 'string',
- 'value' => $expr->getAttribute('originalValue')
- );
- }
+ if ($type instanceof \PhpParser\Node\Name\FullyQualified) {
+ $variable->setType((string)$type);
- if ($expr instanceof LNumber ||
- $expr instanceof UnaryMinus ||
- $expr instanceof UnaryPlus) {
- return array(
- 'type' => 'integer',
- 'value' => $expr->getAttribute('originalValue')
- );
- }
+ return;
+ }
- if ($expr instanceof DNumber) {
- return array(
- 'type' => 'float',
- 'value' => $expr->getAttribute('originalValue')
- );
- }
+ $type = (string)$type;
- if ($expr instanceof Array_) {
- return array(
- 'type' => 'array',
- 'value' => '' // @todo add array2xml?
- );
- }
+ if (isset($this->aliasMap[$type])) {
+ $type = $this->aliasMap[$type];
+ } elseif ($type[0] !== '\\') {
+ $type = $this->namespace . '\\' . $type;
+ }
+ $variable->setType($type);
+ }
- if ($expr instanceof ClassConstFetch) {
- return array(
- 'type' => '{unknown}',
- 'value' => '',
- 'constant' => implode('\\', $expr->class->parts) . '::' . $expr->name
- );
- }
+ private function resolveExpressionValue(Expr $expr) {
+ if ($expr instanceof String_) {
+ return [
+ 'type' => 'string',
+ 'value' => $expr->getAttribute('originalValue')
+ ];
+ }
- if ($expr instanceof ConstFetch) {
- $reference = implode('\\', $expr->name->parts);
- if (strtolower($reference) === 'null') {
- return array(
- 'value' => 'NULL'
- );
- }
- if (in_array(strtolower($reference), array('true', 'false'))) {
- return array(
- 'type' => 'boolean',
- 'value' => $reference
- );
- }
- return array(
- 'type' => '{unknown}',
- 'value' => '',
- 'constant' => implode('\\', $expr->name->parts)
- );
- }
+ if ($expr instanceof LNumber ||
+ $expr instanceof UnaryMinus ||
+ $expr instanceof UnaryPlus) {
+ return [
+ 'type' => 'integer',
+ 'value' => $expr->getAttribute('originalValue')
+ ];
+ }
- if ($expr instanceof MagicConst\Line) {
- return array(
- 'type' => 'integer',
- 'value' => '',
- 'constant' => $expr->getName()
- );
+ if ($expr instanceof DNumber) {
+ return [
+ 'type' => 'float',
+ 'value' => $expr->getAttribute('originalValue')
+ ];
+ }
+
+ if ($expr instanceof Array_) {
+ return [
+ 'type' => 'array',
+ 'value' => '' // @todo add array2xml?
+ ];
+ }
+
+ if ($expr instanceof ClassConstFetch) {
+ return [
+ 'type' => '{unknown}',
+ 'value' => '',
+ 'constant' => \implode('\\', $expr->class->parts) . '::' . $expr->name
+ ];
+ }
+
+ if ($expr instanceof ConstFetch) {
+ $reference = \implode('\\', $expr->name->parts);
+
+ if (\strtolower($reference) === 'null') {
+ return [
+ 'value' => 'NULL'
+ ];
}
- if ($expr instanceof MagicConst) {
- return array(
- 'type' => 'string',
- 'value' => '',
- 'constant' => $expr->getName()
- );
+ if (\in_array(\strtolower($reference), ['true', 'false'])) {
+ return [
+ 'type' => 'boolean',
+ 'value' => $reference
+ ];
}
- if ($expr instanceof BinaryOp) {
- $code = (new \PhpParser\PrettyPrinter\Standard)->prettyPrint([$expr]);
+ return [
+ 'type' => '{unknown}',
+ 'value' => '',
+ 'constant' => \implode('\\', $expr->name->parts)
+ ];
+ }
- return array(
- 'type' => 'expression',
- 'value' => substr($code,0,-1)
- );
+ if ($expr instanceof MagicConst\Line) {
+ return [
+ 'type' => 'integer',
+ 'value' => '',
+ 'constant' => $expr->getName()
+ ];
+ }
- }
+ if ($expr instanceof MagicConst) {
+ return [
+ 'type' => 'string',
+ 'value' => '',
+ 'constant' => $expr->getName()
+ ];
+ }
- $type = get_class($expr);
- $line = $expr->getLine();
- $file = $this->result->getFileName();
- throw new ParseErrorException("Unexpected expression type '$type' for value in line $line of file '$file'", ParseErrorException::UnexpectedExpr);
+ if ($expr instanceof BinaryOp) {
+ $code = (new \PhpParser\PrettyPrinter\Standard)->prettyPrint([$expr]);
+ return [
+ 'type' => 'expression',
+ 'value' => \substr($code, 0, -1)
+ ];
}
- /**
- * @param AbstractVariableObject $variable
- * @param Expr $default
- *
- * @throws ParseErrorException
- */
- private function setVariableDefaultValue(AbstractVariableObject $variable, Expr $default = NULL) {
- if ($default === NULL) {
- return;
- }
+ $type = \get_class($expr);
+ $line = $expr->getLine();
+ $file = $this->result->getFileName();
- $resolved = $this->resolveExpressionValue($default);
- $variable->setDefault($resolved['value']);
+ throw new ParseErrorException("Unexpected expression type '$type' for value in line $line of file '$file'", ParseErrorException::UnexpectedExpr);
+ }
- if (isset($resolved['type'])) {
- $variable->setType($resolved['type']);
- }
+ /**
+ * @param Expr $default
+ *
+ * @throws ParseErrorException
+ */
+ private function setVariableDefaultValue(AbstractVariableObject $variable, Expr $default = null): void {
+ if ($default === null) {
+ return;
+ }
- if (isset($resolved['constant'])) {
- $variable->setConstant($resolved['constant']);
- }
+ $resolved = $this->resolveExpressionValue($default);
+ $variable->setDefault($resolved['value']);
+
+ if (isset($resolved['type'])) {
+ $variable->setType($resolved['type']);
+ }
+
+ if (isset($resolved['constant'])) {
+ $variable->setConstant($resolved['constant']);
}
}
}
diff -Nru phpdox-0.11.2/src/collector/backend/ParseResultException.php phpdox-0.12.0/src/collector/backend/ParseResultException.php
--- phpdox-0.11.2/src/collector/backend/ParseResultException.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/collector/backend/ParseResultException.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,8 +1,6 @@
-file = $file;
+ }
+
+ public function getFileName() {
+ return $this->file->getRealPath();
+ }
+
/**
- * Copyright (c) 2010-2018 Arne Blankerts
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
-namespace TheSeer\phpDox\Collector\Backend {
-
- use TheSeer\fDOM\fDOMDocument;
- use TheSeer\phpDox\Collector\TraitObject;
- use TheSeer\phpDox\Collector\InterfaceObject;
- use TheSeer\phpDox\Collector\ClassObject;
-
- /**
- *
- */
- class ParseResult {
-
- /**
- * @var \SplFileInfo
- */
- private $file;
-
- /**
- * @var ClassObject[]
- */
- private $classes = array();
-
- /**
- * @var InterfaceObject[]
- */
- private $interfaces = array();
-
- /**
- * @var TraitObject[]
- */
- private $traits = array();
-
- /**
- * @param \SplFileInfo $file
- */
- public function __construct(\SplFileInfo $file) {
- $this->file = $file;
- }
-
- public function getFileName() {
- return $this->file->getRealPath();
- }
-
- /**
- * @param $name
- * @return ClassObject
- */
- public function addClass($name) {
- $obj = new ClassObject($name, $this->file);
- $this->classes[$name] = $obj;
- return $obj;
- }
-
- /**
- * @param $name
- * @return InterfaceObject
- */
- public function addInterface($name) {
- $obj = new InterfaceObject($name, $this->file);
- $this->interfaces[$name] = $obj;
- return $obj;
- }
-
- /**
- * @param $name
- * @return TraitObject
- */
- public function addTrait($name) {
- $obj = new TraitObject($name, $this->file);
- $this->traits[$name] = $obj;
- return $obj;
- }
-
- /**
- * @return bool
- */
- public function hasClasses() {
- return count($this->classes) > 0;
- }
-
- /**
- * @return bool
- */
- public function hasInterfaces() {
- return count($this->interfaces) > 0;
- }
-
- /**
- * @return bool
- */
- public function hasTraits() {
- return count($this->traits) > 0;
- }
-
- /**
- * @return ClassObject[]
- */
- public function getClasses() {
- return $this->classes;
- }
-
- /**
- * @return InterfaceObject[]
- */
- public function getInterfaces() {
- return $this->interfaces;
- }
-
- /**
- * @return TraitObject[]
- */
- public function getTraits() {
- return $this->traits;
- }
+ * @param $name
+ */
+ public function addClass($name): ClassObject {
+ $obj = new ClassObject($name, $this->file);
+ $this->classes[$name] = $obj;
+
+ return $obj;
}
+ /**
+ * @param $name
+ */
+ public function addInterface($name): InterfaceObject {
+ $obj = new InterfaceObject($name, $this->file);
+ $this->interfaces[$name] = $obj;
+
+ return $obj;
+ }
+
+ /**
+ * @param $name
+ */
+ public function addTrait($name): TraitObject {
+ $obj = new TraitObject($name, $this->file);
+ $this->traits[$name] = $obj;
+
+ return $obj;
+ }
+
+ public function hasClasses(): bool {
+ return \count($this->classes) > 0;
+ }
+
+ public function hasInterfaces(): bool {
+ return \count($this->interfaces) > 0;
+ }
+
+ public function hasTraits(): bool {
+ return \count($this->traits) > 0;
+ }
+
+ /**
+ * @return ClassObject[]
+ */
+ public function getClasses(): array {
+ return $this->classes;
+ }
+
+ /**
+ * @return InterfaceObject[]
+ */
+ public function getInterfaces(): array {
+ return $this->interfaces;
+ }
+
+ /**
+ * @return TraitObject[]
+ */
+ public function getTraits(): array {
+ return $this->traits;
+ }
}
diff -Nru phpdox-0.11.2/src/collector/backend/SourceFileException.php phpdox-0.12.0/src/collector/backend/SourceFileException.php
--- phpdox-0.11.2/src/collector/backend/SourceFileException.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/collector/backend/SourceFileException.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,10 +1,8 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
-namespace TheSeer\phpDox\Collector {
-
- class CollectorException extends \TheSeer\phpDox\HasFileInfoException {
- const ProcessingError = 1;
- }
+
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
+ * Collector processing class
*/
-namespace TheSeer\phpDox\Collector {
+class Collector {
+ /**
+ * @var ProgressLogger
+ */
+ private $logger;
- use TheSeer\DirectoryScanner\DirectoryScanner;
- use TheSeer\phpDox\FileInfo;
- use TheSeer\phpDox\ProgressLogger;
- use TheSeer\phpDox\Collector\Backend\BackendInterface;
- use TheSeer\phpDox\Collector\Backend\ParseErrorException;
-
- /**
- * Collector processing class
- */
- class Collector {
-
- /**
- * @var ProgressLogger
- */
- private $logger;
-
- /**
- * @var Project
- */
- private $project;
-
- /**
- * @var array
- */
- private $parseErrors = array();
-
- /**
- * @var BackendInterface
- */
- private $backend;
-
- /**
- * @var string
- */
- private $encoding;
-
- /**
- * @var bool
- */
- private $publicOnly;
-
- /**
- * @param ProgressLogger $logger
- * @param Project $project
- * @param BackendInterface $backend
- * @param string $encoding
- * @param bool $publicOnly
- */
- public function __construct(ProgressLogger $logger, Project $project, BackendInterface $backend, $encoding, $publicOnly) {
- $this->logger = $logger;
- $this->project = $project;
- $this->backend = $backend;
- $this->encoding = $encoding;
- $this->publicOnly = $publicOnly;
- }
+ /**
+ * @var Project
+ */
+ private $project;
- /**
- * @param DirectoryScanner $scanner
- *
- * @return Project
- */
- public function run(DirectoryScanner $scanner) {
-
- $srcDir = $this->project->getSourceDir();
- $this->logger->log("Scanning directory '{$srcDir}' for files to process\n");
-
- $iterator = new SourceFileIterator($scanner($srcDir), $srcDir, $this->encoding);
- foreach($iterator as $file) {
- $needsProcessing = $this->project->addFile($file);
- if (!$needsProcessing) {
- $this->logger->progress('cached');
- continue;
- }
- if (!$this->processFile($file)) {
- $this->project->removeFile($file);
- }
+ /**
+ * @var array
+ */
+ private $parseErrors = [];
+
+ /**
+ * @var BackendInterface
+ */
+ private $backend;
+
+ /**
+ * @var string
+ */
+ private $encoding;
+
+ /**
+ * @var bool
+ */
+ private $publicOnly;
+
+ /**
+ * @param string $encoding
+ * @param bool $publicOnly
+ */
+ public function __construct(ProgressLogger $logger, Project $project, BackendInterface $backend, $encoding, $publicOnly) {
+ $this->logger = $logger;
+ $this->project = $project;
+ $this->backend = $backend;
+ $this->encoding = $encoding;
+ $this->publicOnly = $publicOnly;
+ }
+
+ public function run(DirectoryScanner $scanner): Project {
+ $srcDir = $this->project->getSourceDir();
+ $this->logger->log("Scanning directory '{$srcDir}' for files to process\n");
+
+ $iterator = new SourceFileIterator($scanner($srcDir), $srcDir, $this->encoding);
+
+ foreach ($iterator as $file) {
+ $needsProcessing = $this->project->addFile($file);
+
+ if (!$needsProcessing) {
+ $this->logger->progress('cached');
+
+ continue;
}
- $this->logger->completed();
- return $this->project;
- }
- /**
- * @return bool
- */
- public function hasParseErrors() {
- return count($this->parseErrors) > 0;
+ if (!$this->processFile($file)) {
+ $this->project->removeFile($file);
+ }
}
+ $this->logger->completed();
- /**
- * @return array
- */
- public function getParseErrors() {
- return $this->parseErrors;
- }
+ return $this->project;
+ }
- /**
- * @param FileInfo $file
- *
- * @throws CollectorException
- * @throws \TheSeer\phpDox\ProgressLoggerException
- *
- * @return bool
- */
- private function processFile(SourceFile $file) {
- try {
- if ($file->getSize() === 0) {
- $this->logger->progress('processed');
- return true;
- }
- $result = $this->backend->parse($file, $this->publicOnly);
+ public function hasParseErrors(): bool {
+ return \count($this->parseErrors) > 0;
+ }
+
+ public function getParseErrors(): array {
+ return $this->parseErrors;
+ }
+
+ /**
+ * @param FileInfo $file
+ *
+ * @throws CollectorException
+ * @throws \TheSeer\phpDox\ProgressLoggerException
+ */
+ private function processFile(SourceFile $file): bool {
+ try {
+ if ($file->getSize() === 0) {
+ $this->logger->progress('processed');
- if ($result->hasClasses()) {
- foreach($result->getClasses() as $class) {
- $this->project->addClass($class);
- }
+ return true;
+ }
+ $result = $this->backend->parse($file, $this->publicOnly);
+
+ if ($result->hasClasses()) {
+ foreach ($result->getClasses() as $class) {
+ $this->project->addClass($class);
}
- if ($result->hasInterfaces()) {
- foreach($result->getInterfaces() as $interface) {
- $this->project->addInterface($interface);
- }
+ }
+
+ if ($result->hasInterfaces()) {
+ foreach ($result->getInterfaces() as $interface) {
+ $this->project->addInterface($interface);
}
- if ($result->hasTraits()) {
- foreach($result->getTraits() as $trait) {
- $this->project->addTrait($trait);
- }
+ }
+
+ if ($result->hasTraits()) {
+ foreach ($result->getTraits() as $trait) {
+ $this->project->addTrait($trait);
}
- $this->logger->progress('processed');
- return true;
- } catch (ParseErrorException $e) {
- $previous = $e->getPrevious();
- $this->parseErrors[$file->getPathname()] = sprintf(
- '%s [%s:%d]',
- $previous->getMessage(),
- basename($previous->getFile()),
- $previous->getLine()
- );
- $this->logger->progress('failed');
- return false;
- } catch (\Exception $e) {
- throw new CollectorException('Error while processing source file', CollectorException::ProcessingError, $e, $file);
}
- }
+ $this->logger->progress('processed');
+ return true;
+ } catch (ParseErrorException $e) {
+ $previous = $e->getPrevious();
+ $this->parseErrors[$file->getPathname()] = \sprintf(
+ '%s [%s:%d]',
+ $previous->getMessage(),
+ \basename($previous->getFile()),
+ $previous->getLine()
+ );
+ $this->logger->progress('failed');
+
+ return false;
+ } catch (\Exception $e) {
+ throw new CollectorException('Error while processing source file', CollectorException::ProcessingError, $e, $file);
+ }
}
}
diff -Nru phpdox-0.11.2/src/collector/InheritanceResolver.php phpdox-0.12.0/src/collector/InheritanceResolver.php
--- phpdox-0.11.2/src/collector/InheritanceResolver.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/collector/InheritanceResolver.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,224 +1,92 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
+ * @var ProgressLogger
*/
-namespace TheSeer\phpDox\Collector {
-
- use TheSeer\fDOM\fDOMDocument;
- use TheSeer\phpDox\InheritanceConfig;
- use TheSeer\phpDox\ProgressLogger;
+ private $logger;
/**
- * Inheritance resolving class
+ * @var \TheSeer\phpDox\Collector\Project
*/
- class InheritanceResolver {
-
- /**
- * @var ProgressLogger
- */
- private $logger;
-
- /**
- * @var \TheSeer\phpDox\Collector\Project
- */
- private $project;
-
- /**
- * @var InheritanceConfig
- */
- private $config;
-
- private $dependencyStack = array();
-
- /**
- * @var array
- */
- private $unresolved = array();
-
- /**
- * @var array
- */
- private $errors = array();
-
- /**
- * @param ProgressLogger $logger
- */
- public function __construct(ProgressLogger $logger) {
- $this->logger = $logger;
- }
-
- /**
- * @param array $changed
- * @param Project $project
- * @param InheritanceConfig $config
- *
- * @throws ProjectException
- * @throws UnitObjectException
- */
- public function resolve(Array $changed, Project $project, InheritanceConfig $config) {
- if (count($changed) == 0) {
- return;
- }
- $this->logger->reset();
- $this->logger->log("Resolving inheritance\n");
-
- $this->project = $project;
- $this->config = $config;
-
- $this->setupDependencies();
-
- foreach($changed as $unit) {
- /** @var AbstractUnitObject $unit */
- if ($unit->hasExtends()) {
- foreach($unit->getExtends() as $name) {
- try {
- $extendedUnit = $this->getUnitByName($name);
- $this->processExtends($unit, $extendedUnit);
- } catch (ProjectException $e) {
- $this->addUnresolved($unit, $name);
- }
- }
- }
- if ($unit->hasImplements()) {
- foreach($unit->getImplements() as $implements) {
- try {
- $implementsUnit = $this->getUnitByName($implements);
- $this->processImplements($unit, $implementsUnit);
- } catch (ProjectException $e) {
- $this->addUnresolved($unit, $implements);
- }
- }
- }
- if ($unit->usesTraits()) {
- foreach($unit->getUsedTraits() as $traitName) {
- try {
- $traitUnit = $this->getUnitByName($traitName);
- $this->processTraitUse(
- $unit,
- $unit->getTraitUse($traitName),
- $traitUnit
- );
- } catch (ProjectException $e) {
- $this->addUnresolved($unit, $traitName);
- }
- }
- }
+ private $project;
- $unitName = $unit->getName();
- if (isset($this->unresolved[$unitName])) {
- foreach($this->unresolved[$unitName] as $missingUnit) {
- $unit->markDependencyAsUnresolved($missingUnit);
- }
- }
-
- $this->logger->progress('processed');
- }
-
- $this->project->save();
- $this->logger->completed();
- }
-
- public function hasUnresolved() {
- return count($this->unresolved) > 0;
- }
-
- public function getUnresolved() {
- return $this->unresolved;
- }
-
- public function hasErrors() {
- return count($this->errors) > 0;
- }
-
- public function getErrors() {
- return $this->errors;
- }
+ /**
+ * @var InheritanceConfig
+ */
+ private $config;
- private function addError(AbstractUnitObject $unit, $errorInfo) {
- $unitName = $unit->getName();
- if (!isset($this->errors[$unitName])) {
- $this->errors[$unitName] = array();
- }
- $this->errors[$unitName][] = $errorInfo;
- }
+ private $dependencyStack = [];
- private function addUnresolved(AbstractUnitObject $unit, $missingUnit) {
- $unitName = $unit->getName();
- if (!isset($this->unresolved[$unitName])) {
- $this->unresolved[$unitName] = array();
- }
- $this->unresolved[$unitName][] = $missingUnit;
- $this->project->registerForSaving($unit);
- }
+ /**
+ * @var array
+ */
+ private $unresolved = [];
- private function processExtends(AbstractUnitObject $unit, AbstractUnitObject $extends) {
- $this->project->registerForSaving($unit);
- $this->project->registerForSaving($extends);
+ /**
+ * @var array
+ */
+ private $errors = [];
- $extends->addExtender($unit);
- $unit->importExports($extends, 'parent');
+ public function __construct(ProgressLogger $logger) {
+ $this->logger = $logger;
+ }
- if ($extends->hasExtends()) {
- foreach($extends->getExtends() as $name) {
+ /**
+ * @throws ProjectException
+ * @throws UnitObjectException
+ */
+ public function resolve(array $changed, Project $project, InheritanceConfig $config): void {
+ if (\count($changed) == 0) {
+ return;
+ }
+ $this->logger->reset();
+ $this->logger->log("Resolving inheritance\n");
+
+ $this->project = $project;
+ $this->config = $config;
+
+ $this->setupDependencies();
+
+ foreach ($changed as $unit) {
+ /** @var AbstractUnitObject $unit */
+ if ($unit->hasExtends()) {
+ foreach ($unit->getExtends() as $name) {
try {
$extendedUnit = $this->getUnitByName($name);
- $this->processExtends($unit, $extendedUnit, $extendedUnit);
+ $this->processExtends($unit, $extendedUnit);
} catch (ProjectException $e) {
$this->addUnresolved($unit, $name);
}
}
}
- if ($extends->hasImplements()) {
- foreach($extends->getImplements() as $implements) {
+ if ($unit->hasImplements()) {
+ foreach ($unit->getImplements() as $implements) {
try {
$implementsUnit = $this->getUnitByName($implements);
- $this->processImplements($unit, $implementsUnit, $implementsUnit);
+ $this->processImplements($unit, $implementsUnit);
} catch (ProjectException $e) {
$this->addUnresolved($unit, $implements);
}
}
}
- if ($extends->usesTraits()) {
- foreach($extends->getUsedTraits() as $traitName) {
+ if ($unit->usesTraits()) {
+ foreach ($unit->getUsedTraits() as $traitName) {
try {
$traitUnit = $this->getUnitByName($traitName);
$this->processTraitUse(
$unit,
- $extends->getTraitUse($traitName),
+ $unit->getTraitUse($traitName),
$traitUnit
);
} catch (ProjectException $e) {
@@ -227,106 +95,200 @@
}
}
- }
-
- private function processImplements(AbstractUnitObject $unit, AbstractUnitObject $implements) {
- $this->project->registerForSaving($unit);
- $this->project->registerForSaving($implements);
-
- if (!$implements instanceof InterfaceObject) {
- $this->addError(
- $unit,
- sprintf(
- 'Trying to implement "%s" which is a %s',
- $implements->getName(),
- $implements->getType()
- )
- );
- return;
- }
- $implements->addImplementor($unit);
- $unit->importExports($implements, 'interface');
+ $unitName = $unit->getName();
- if ($implements->hasImplements()) {
- foreach($implements->getImplements() as $implementing) {
- try {
- $implementsUnit = $this->getUnitByName($implementing);
- $this->processExtends($unit, $implementsUnit, $implementsUnit);
- } catch (ProjectException $e) {
- $this->addUnresolved($unit, $implementing);
- }
+ if (isset($this->unresolved[$unitName])) {
+ foreach ($this->unresolved[$unitName] as $missingUnit) {
+ $unit->markDependencyAsUnresolved($missingUnit);
}
}
+
+ $this->logger->progress('processed');
}
- private function processTraitUse(AbstractUnitObject $unit, TraitUseObject $use, AbstractUnitObject $trait) {
- $this->project->registerForSaving($unit);
- $this->project->registerForSaving($trait);
+ $this->project->save();
+ $this->logger->completed();
+ }
- $trait->addUser($unit);
- $unit->importTraitExports($trait, $use);
+ public function hasUnresolved() {
+ return \count($this->unresolved) > 0;
+ }
- if ($trait->hasExtends()) {
- foreach($trait->getExtends() as $name) {
- try {
- $extendedUnit = $this->getUnitByName($name);
- $this->processExtends($unit, $extendedUnit, $extendedUnit);
- } catch (ProjectException $e) {
- $this->addUnresolved($unit, $name);
- }
+ public function getUnresolved() {
+ return $this->unresolved;
+ }
+
+ public function hasErrors() {
+ return \count($this->errors) > 0;
+ }
+
+ public function getErrors() {
+ return $this->errors;
+ }
+
+ private function addError(AbstractUnitObject $unit, $errorInfo): void {
+ $unitName = $unit->getName();
+
+ if (!isset($this->errors[$unitName])) {
+ $this->errors[$unitName] = [];
+ }
+ $this->errors[$unitName][] = $errorInfo;
+ }
+
+ private function addUnresolved(AbstractUnitObject $unit, $missingUnit): void {
+ $unitName = $unit->getName();
+
+ if (!isset($this->unresolved[$unitName])) {
+ $this->unresolved[$unitName] = [];
+ }
+ $this->unresolved[$unitName][] = $missingUnit;
+ $this->project->registerForSaving($unit);
+ }
+
+ private function processExtends(AbstractUnitObject $unit, AbstractUnitObject $extends): void {
+ $this->project->registerForSaving($unit);
+ $this->project->registerForSaving($extends);
+
+ $extends->addExtender($unit);
+ $unit->importExports($extends, 'parent');
+
+ if ($extends->hasExtends()) {
+ foreach ($extends->getExtends() as $name) {
+ try {
+ $extendedUnit = $this->getUnitByName($name);
+ $this->processExtends($unit, $extendedUnit, $extendedUnit);
+ } catch (ProjectException $e) {
+ $this->addUnresolved($unit, $name);
}
}
+ }
- if ($trait->usesTraits()) {
- foreach($trait->getUsedTraits() as $traitName) {
- try {
- $traitUnit = $this->getUnitByName($traitName);
- $this->processTraitUse(
- $unit,
- $trait->getTraitUse($traitName),
- $traitUnit
- );
- } catch (ProjectException $e) {
- $this->addUnresolved($unit, $traitName);
- }
+ if ($extends->hasImplements()) {
+ foreach ($extends->getImplements() as $implements) {
+ try {
+ $implementsUnit = $this->getUnitByName($implements);
+ $this->processImplements($unit, $implementsUnit, $implementsUnit);
+ } catch (ProjectException $e) {
+ $this->addUnresolved($unit, $implements);
}
}
+ }
+ if ($extends->usesTraits()) {
+ foreach ($extends->getUsedTraits() as $traitName) {
+ try {
+ $traitUnit = $this->getUnitByName($traitName);
+ $this->processTraitUse(
+ $unit,
+ $extends->getTraitUse($traitName),
+ $traitUnit
+ );
+ } catch (ProjectException $e) {
+ $this->addUnresolved($unit, $traitName);
+ }
+ }
}
+ }
- private function setupDependencies() {
- $this->dependencyStack = array(
- $this->project,
+ private function processImplements(AbstractUnitObject $unit, AbstractUnitObject $implements): void {
+ $this->project->registerForSaving($unit);
+ $this->project->registerForSaving($implements);
+
+ if (!$implements instanceof InterfaceObject) {
+ $this->addError(
+ $unit,
+ \sprintf(
+ 'Trying to implement "%s" which is a %s',
+ $implements->getName(),
+ $implements->getType()
+ )
);
- $publicOnlyMode = $this->config->isPublicOnlyMode();
- foreach($this->config->getDependencyDirectories() as $depDir) {
- $idxName = $depDir . '/index.xml';
- if (!file_exists($idxName)) {
- $this->logger->log("'$idxName' not found - skipping dependency");
- continue;
+ return;
+ }
+ $implements->addImplementor($unit);
+ $unit->importExports($implements, 'interface');
+
+ if ($implements->hasImplements()) {
+ foreach ($implements->getImplements() as $implementing) {
+ try {
+ $implementsUnit = $this->getUnitByName($implementing);
+ $this->processExtends($unit, $implementsUnit, $implementsUnit);
+ } catch (ProjectException $e) {
+ $this->addUnresolved($unit, $implementing);
}
- $dom = new fDOMDocument();
- $dom->load($idxName);
- $this->dependencyStack[] = new Dependency($dom, $this->project, $publicOnlyMode);
}
}
+ }
+
+ private function processTraitUse(AbstractUnitObject $unit, TraitUseObject $use, AbstractUnitObject $trait): void {
+ $this->project->registerForSaving($unit);
+ $this->project->registerForSaving($trait);
- /**
- * @param $name
- *
- * @return AbstractUnitObject
- * @throws ProjectException
- */
- private function getUnitByName($name) {
- foreach($this->dependencyStack as $dependency) {
+ $trait->addUser($unit);
+ $unit->importTraitExports($trait, $use);
+
+ if ($trait->hasExtends()) {
+ foreach ($trait->getExtends() as $name) {
try {
- return $dependency->getUnitByName($name);
- } catch (\Exception $e) {}
+ $extendedUnit = $this->getUnitByName($name);
+ $this->processExtends($unit, $extendedUnit, $extendedUnit);
+ } catch (ProjectException $e) {
+ $this->addUnresolved($unit, $name);
+ }
}
- throw new ProjectException("No unit with name '$name' found");
}
+ if ($trait->usesTraits()) {
+ foreach ($trait->getUsedTraits() as $traitName) {
+ try {
+ $traitUnit = $this->getUnitByName($traitName);
+ $this->processTraitUse(
+ $unit,
+ $trait->getTraitUse($traitName),
+ $traitUnit
+ );
+ } catch (ProjectException $e) {
+ $this->addUnresolved($unit, $traitName);
+ }
+ }
+ }
}
+ private function setupDependencies(): void {
+ $this->dependencyStack = [
+ $this->project,
+ ];
+
+ $publicOnlyMode = $this->config->isPublicOnlyMode();
+
+ foreach ($this->config->getDependencyDirectories() as $depDir) {
+ $idxName = $depDir . '/index.xml';
+
+ if (!\file_exists($idxName)) {
+ $this->logger->log("'$idxName' not found - skipping dependency");
+
+ continue;
+ }
+ $dom = new fDOMDocument();
+ $dom->load($idxName);
+ $this->dependencyStack[] = new Dependency($dom, $this->project, $publicOnlyMode);
+ }
+ }
+
+ /**
+ * @param $name
+ *
+ * @throws ProjectException
+ */
+ private function getUnitByName($name): AbstractUnitObject {
+ foreach ($this->dependencyStack as $dependency) {
+ try {
+ return $dependency->getUnitByName($name);
+ } catch (\Exception $e) {
+ }
+ }
+
+ throw new ProjectException("No unit with name '$name' found");
+ }
}
diff -Nru phpdox-0.11.2/src/collector/project/AbstractUnitObject.php phpdox-0.12.0/src/collector/project/AbstractUnitObject.php
--- phpdox-0.11.2/src/collector/project/AbstractUnitObject.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/collector/project/AbstractUnitObject.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,633 +1,570 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
-namespace TheSeer\phpDox\Collector {
-
- use TheSeer\fDOM\fDOMDocument;
- use TheSeer\fDOM\fDOMElement;
- use TheSeer\phpDox\DocBlock\DocBlock;
- use TheSeer\phpDox\FileInfo;
+rootName === NULL) {
- throw new UnitObjectException('No or invalid rootname set', UnitObjectException::InvalidRootname);
- }
- $this->dom = new fDOMDocument('1.0', 'UTF-8');
- $this->dom->registerNamespace('phpdox', self::XMLNS);
- $this->rootNode = $this->dom->createElementNS(self::XMLNS, $this->rootName);
- $this->dom->appendChild($this->rootNode);
- if ($name !== NULL) {
- $this->setName($name, $this->rootNode);
- }
- if ($file !== NULL) {
- $this->rootNode->appendChild($file->asNode($this->rootNode));
- }
- $this->setAbstract(FALSE);
- $this->setFinal(FALSE);
- }
+ /**
+ * @var string
+ */
+ protected $rootName;
- /**
- * @param $name
- */
- protected function setName($name, fDOMElement $ctx) {
- $parts = explode('\\', $name);
- $local = array_pop($parts);
- $namespace = join('\\', $parts);
- $ctx->setAttribute('full', $name);
- $ctx->setAttribute('namespace', $namespace);
- $ctx->setAttribute('name', $local);
- }
+ /**
+ * @var fDOMDocument
+ */
+ private $dom;
+ /**
+ * @var fDOMElement
+ */
+ private $rootNode;
- protected function getRootNode() {
- return $this->rootNode;
+ /**
+ * @param string $name
+ * @param \SplFileInfo $file
+ */
+ public function __construct($name = null, SourceFile $file = null) {
+ if ($this->rootName === null) {
+ throw new UnitObjectException('No or invalid rootname set', UnitObjectException::InvalidRootname);
}
+ $this->dom = new fDOMDocument('1.0', 'UTF-8');
+ $this->dom->registerNamespace('phpdox', self::XMLNS);
+ $this->rootNode = $this->dom->createElementNS(self::XMLNS, $this->rootName);
+ $this->dom->appendChild($this->rootNode);
- /**
- * @return \TheSeer\fDOM\fDOMDocument
- */
- public function export() {
- return $this->dom;
+ if ($name !== null) {
+ $this->setName($name, $this->rootNode);
}
- /**
- * @param \TheSeer\fDOM\fDOMDocument $dom
- */
- public function import(fDOMDocument $dom) {
- $this->dom = $dom;
- $this->rootNode = $dom->documentElement;
- $this->dom->registerNamespace('phpdox', self::XMLNS);
+ if ($file !== null) {
+ $this->rootNode->appendChild($file->asNode($this->rootNode));
}
+ $this->setAbstract(false);
+ $this->setFinal(false);
+ }
- public function getType() {
- return $this->rootNode->localName;
- }
+ public function export(): fDOMDocument {
+ return $this->dom;
+ }
- /**
- * @return string
- */
- public function getLocalName() {
- return $this->rootNode->getAttribute('name');
- }
+ public function import(fDOMDocument $dom): void {
+ $this->dom = $dom;
+ $this->rootNode = $dom->documentElement;
+ $this->dom->registerNamespace('phpdox', self::XMLNS);
+ }
- /**
- * @return string
- */
- public function getName() {
- return $this->rootNode->getAttribute('full');
- }
+ public function getType() {
+ return $this->rootNode->localName;
+ }
- /**
- * @return string
- */
- public function getNamespace() {
- return $this->rootNode->getAttribute('namespace');
- }
+ public function getLocalName(): string {
+ return $this->rootNode->getAttribute('name');
+ }
- /**
- * @return FileInfo
- */
- public function getSourceFilename() {
- $file = $this->rootNode->queryOne('phpdox:file');
- if (!$file) {
- return '';
- }
- return new FileInfo($file->getAttribute('path') . '/' . $file->getAttribute('file'));
- }
+ public function getName(): string {
+ return $this->rootNode->getAttribute('full');
+ }
- /**
- * @return string
- */
- public function getCompactDescription() {
- $desc = $this->rootNode->queryOne('phpdox:docblock/phpdox:description');
- if (!$desc || !$desc->hasAttribute('compact')) {
- return '';
- }
- return $desc->getAttribute('compact');
- }
+ public function getNamespace(): string {
+ return $this->rootNode->getAttribute('namespace');
+ }
- /**
- * @param int $endLine
- */
- public function setEndLine($endLine) {
- $this->rootNode->setAttribute('end', $endLine);
- }
+ public function getSourceFilename(): ?FileInfo {
+ $file = $this->rootNode->queryOne('phpdox:file');
- /**
- * @param int $startLine
- */
- public function setStartLine($startLine) {
- $this->rootNode->setAttribute('start', $startLine);
+ if (!$file) {
+ return null;
}
- /**
- * @param boolean $isAbstract
- */
- public function setAbstract($isAbstract) {
- $this->rootNode->setAttribute('abstract', $isAbstract ? 'true' : 'false');
- }
+ return new FileInfo($file->getAttribute('path') . '/' . $file->getAttribute('file'));
+ }
- /**
- * @param boolean $isFinal
- */
- public function setFinal($isFinal) {
- $this->rootNode->setAttribute('final', $isFinal ? 'true' : 'false');
+ public function getCompactDescription(): string {
+ $desc = $this->rootNode->queryOne('phpdox:docblock/phpdox:description');
+
+ if (!$desc || !$desc->hasAttribute('compact')) {
+ return '';
}
- /**
- * @param \TheSeer\phpDox\DocBlock\DocBlock $docblock
- */
- public function setDocBlock(DocBlock $docblock) {
- $docNode = $docblock->asDom($this->dom);
- $this->rootNode->appendChild($docNode);
+ return $desc->getAttribute('compact');
+ }
+
+ /**
+ * @param int $endLine
+ */
+ public function setEndLine($endLine): void {
+ $this->rootNode->setAttribute('end', $endLine);
+ }
+
+ /**
+ * @param int $startLine
+ */
+ public function setStartLine($startLine): void {
+ $this->rootNode->setAttribute('start', $startLine);
+ }
+
+ /**
+ * @param bool $isAbstract
+ */
+ public function setAbstract($isAbstract): void {
+ $this->rootNode->setAttribute('abstract', $isAbstract ? 'true' : 'false');
+ }
+
+ /**
+ * @param bool $isFinal
+ */
+ public function setFinal($isFinal): void {
+ $this->rootNode->setAttribute('final', $isFinal ? 'true' : 'false');
+ }
+
+ public function setDocBlock(DocBlock $docblock): void {
+ $docNode = $docblock->asDom($this->dom);
+ $this->rootNode->appendChild($docNode);
+ }
+
+ /**
+ * @param $name
+ */
+ public function addExtends($name): void {
+ $extends = $this->rootNode->appendElementNS(self::XMLNS, 'extends');
+ $this->setName($name, $extends);
+ }
+
+ public function hasExtends(): bool {
+ return $this->rootNode->queryOne('phpdox:extends') !== null;
+ }
+
+ /**
+ * @throws UnitObjectException
+ */
+ public function getExtends() {
+ if (!$this->hasExtends()) {
+ throw new UnitObjectException('This unit does not extend any unit', UnitObjectException::NoExtends);
}
+ $result = [];
- /**
- * @param $name
- */
- public function addExtends($name) {
- $extends = $this->rootNode->appendElementNS(self::XMLNS, 'extends');
- $this->setName($name, $extends);
+ foreach ($this->rootNode->query('phpdox:extends') as $ext) {
+ $result[] = $ext->getAttribute('full');
}
- /**
- * @return bool
- */
- public function hasExtends() {
- return $this->rootNode->queryOne('phpdox:extends') !== NULL;
+ return $result;
+ }
+
+ public function addExtender(self $unit): void {
+ if ($this->rootNode->queryOne(\sprintf('phpdox:extenders/phpdox:*[@full = "%s"]', $unit->getName())) !== null) {
+ return;
}
+ $extender = $this->addToContainer('extenders', 'extender');
+ $this->setName($unit->getName(), $extender);
+ }
- /**
- * @return mixed
- * @throws UnitObjectException
- */
- public function getExtends() {
- if(!$this->hasExtends()) {
- throw new UnitObjectException('This unit does not extend any unit', UnitObjectException::NoExtends);
- }
- $result = array();
- foreach($this->rootNode->query('phpdox:extends') as $ext) {
- $result[] = $ext->getAttribute('full');
- }
- return $result;
+ /**
+ * @param $name
+ */
+ public function addImplements($name): void {
+ $implements = $this->rootNode->appendElementNS(self::XMLNS, 'implements');
+ $this->setName($name, $implements);
+ }
+
+ public function hasImplements(): bool {
+ return $this->rootNode->query('phpdox:implements')->length > 0;
+ }
+
+ /**
+ * @throws UnitObjectException
+ */
+ public function getImplements(): array {
+ if (!$this->hasImplements()) {
+ throw new UnitObjectException('This unit does not implement any interfaces', UnitObjectException::NoImplements);
}
+ $result = [];
- /**
- * @param AbstractUnitObject $unit
- */
- public function addExtender(AbstractUnitObject $unit) {
- if ($this->rootNode->queryOne(sprintf('phpdox:extenders/phpdox:*[@full = "%s"]', $unit->getName())) !== NULL) {
- return;
- }
- $extender = $this->addToContainer('extenders', 'extender');
- $this->setName($unit->getName(), $extender);
+ foreach ($this->rootNode->query('phpdox:implements') as $impl) {
+ $result[] = $impl->getAttribute('full');
}
- /**
- * @param $name
- */
- public function addImplements($name) {
- $implements = $this->rootNode->appendElementNS(self::XMLNS, 'implements');
- $this->setName($name, $implements);
- }
-
- /**
- * @return bool
- */
- public function hasImplements() {
- return $this->rootNode->query('phpdox:implements')->length > 0;
- }
-
- /**
- * @return array
- * @throws UnitObjectException
- */
- public function getImplements() {
- if (!$this->hasImplements()) {
- throw new UnitObjectException('This unit does not implement any interfaces', UnitObjectException::NoImplements);
- }
- $result = array();
- foreach($this->rootNode->query('phpdox:implements') as $impl) {
- $result[] = $impl->getAttribute('full');
- }
- return $result;
+ return $result;
+ }
+
+ public function usesTraits(): bool {
+ return $this->rootNode->query('phpdox:uses')->length > 0;
+ }
+
+ /**
+ * @param $name
+ */
+ public function usesTrait($name): bool {
+ return $this->rootNode->query(\sprintf('phpdox:uses[@full="%s"]', $name))->length > 0;
+ }
+
+ /**
+ * @param string $name
+ */
+ public function addTrait($name): TraitUseObject {
+ $traituse = new TraitUseObject($this->rootNode->appendElementNS(self::XMLNS, 'uses'));
+ $traituse->setName($name);
+
+ return $traituse;
+ }
+
+ /**
+ * @throws UnitObjectException
+ */
+ public function getUsedTraits(): array {
+ if (!$this->usesTraits()) {
+ throw new UnitObjectException('This unit does not use any traits', UnitObjectException::NoTraitsUsed);
}
+ $result = [];
- /**
- * @return bool
- */
- public function usesTraits() {
- return $this->rootNode->query('phpdox:uses')->length > 0;
- }
-
- /**
- * @param $name
- *
- * @return bool
- */
- public function usesTrait($name) {
- return $this->rootNode->query(sprintf('phpdox:uses[@full="%s"]', $name))->length > 0;
- }
-
- /**
- * @param string $name
- *
- * @return TraitUseObject
- */
- public function addTrait($name) {
- $traituse = new TraitUseObject($this->rootNode->appendElementNS(self::XMLNS, 'uses'));
- $traituse->setName($name);
- return $traituse;
- }
-
- /**
- * @return array
- * @throws UnitObjectException
- */
- public function getUsedTraits() {
- if (!$this->usesTraits()) {
- throw new UnitObjectException('This unit does not use any traits', UnitObjectException::NoTraitsUsed);
- }
- $result = array();
- foreach($this->rootNode->query('phpdox:uses') as $trait) {
- $result[] = $trait->getAttribute('full');
- }
- return $result;
+ foreach ($this->rootNode->query('phpdox:uses') as $trait) {
+ $result[] = $trait->getAttribute('full');
}
- /**
- * @param $name
- *
- * @return TraitUseObject
- * @throws UnitObjectException
- */
- public function getTraitUse($name) {
- $node = $this->rootNode->queryOne(
- sprintf('phpdox:uses[@full="%s"]', $name)
+ return $result;
+ }
+
+ /**
+ * @param $name
+ *
+ * @throws UnitObjectException
+ */
+ public function getTraitUse($name): TraitUseObject {
+ $node = $this->rootNode->queryOne(
+ \sprintf('phpdox:uses[@full="%s"]', $name)
+ );
+
+ if (!$node) {
+ throw new UnitObjectException(
+ \sprintf('Trait "%s" not used', $name),
+ UnitObjectException::NoSuchTrait
);
- if (!$node) {
- throw new UnitObjectException(
- sprintf('Trait "%s" not used', $name),
- UnitObjectException::NoSuchTrait
- );
- }
- return new TraitUseObject($node);
}
- public function getAmbiguousTraitUse() {
- $node = $this->rootNode->queryOne('phpdox:ambiguous[@type="trait-alias"]');
- if (!$node) {
- $node = $this->rootNode->appendElementNS(self::XMLNS, 'ambiguous');
- $node->setAttribute('type','trait-alias');
- }
- return new TraitUseObject($node);
+ return new TraitUseObject($node);
+ }
+
+ public function getAmbiguousTraitUse() {
+ $node = $this->rootNode->queryOne('phpdox:ambiguous[@type="trait-alias"]');
+
+ if (!$node) {
+ $node = $this->rootNode->appendElementNS(self::XMLNS, 'ambiguous');
+ $node->setAttribute('type', 'trait-alias');
}
- /**
- * @param string $dependency
- */
- public function markDependencyAsUnresolved($dependency) {
- $depNode = $this->rootNode->queryOne(
- sprintf('//phpdox:implements[@full="%1$s"]|//phpdox:extends[@full="%1$s"]|//phpdox:uses[@full="%1$s"]', $dependency)
+ return new TraitUseObject($node);
+ }
+
+ /**
+ * @param string $dependency
+ */
+ public function markDependencyAsUnresolved($dependency): void {
+ $depNode = $this->rootNode->queryOne(
+ \sprintf('//phpdox:implements[@full="%1$s"]|//phpdox:extends[@full="%1$s"]|//phpdox:uses[@full="%1$s"]', $dependency)
+ );
+
+ if (!$depNode) {
+ throw new UnitObjectException(
+ \sprintf('No dependency "%s" found in unit %s', $dependency, $this->getName()),
+ UnitObjectException::NoSuchDependency
);
- if (!$depNode) {
- throw new UnitObjectException(
- sprintf('No dependency "%s" found in unit %s', $dependency, $this->getName()),
- UnitObjectException::NoSuchDependency
- );
- }
- $depNode->setAttribute('unresolved', 'true');
}
+ $depNode->setAttribute('unresolved', 'true');
+ }
- /**
- *
- */
- public function addMethod($name) {
- switch ($name) {
- case '__construct':
+ public function addMethod($name) {
+ switch ($name) {
+ case '__construct':
{
$nodeName = 'constructor';
+
break;
}
- case '__destruct':
+ case '__destruct':
{
$nodeName = 'destructor';
+
break;
}
- default:
- $nodeName = 'method';
- }
- $method = new MethodObject($this, $this->rootNode->appendElementNS(self::XMLNS, $nodeName));
- $method->setName($name);
- return $method;
+ default:
+ $nodeName = 'method';
}
+ $method = new MethodObject($this, $this->rootNode->appendElementNS(self::XMLNS, $nodeName));
+ $method->setName($name);
- /**
- * @return MethodObject[]
- */
- public function getExportedMethods() {
- $result = array();
- $xpath = '(phpdox:constructor|phpdox:destructor|phpdox:method)[@visibility="public" or @visibility="protected"]';
- foreach($this->rootNode->query($xpath) as $node) {
- $result[] = new MethodObject($this, $node);
- }
- return $result;
+ return $method;
+ }
+
+ /**
+ * @return MethodObject[]
+ */
+ public function getExportedMethods(): array {
+ $result = [];
+ $xpath = '(phpdox:constructor|phpdox:destructor|phpdox:method)[@visibility="public" or @visibility="protected"]';
+
+ foreach ($this->rootNode->query($xpath) as $node) {
+ $result[] = new MethodObject($this, $node);
}
- /**
- * @param $name
- *
- * @return MemberObject
- */
- public function addMember($name) {
- $member = new MemberObject($this->rootNode->appendElementNS(self::XMLNS, 'member'));
- $member->setName($name);
- return $member;
- }
-
- /**
- * @return array
- */
- public function getExportedMembers() {
- $result = array();
- $xpath = 'phpdox:member[@visibility="public" or @visibility="protected"]';
- foreach($this->rootNode->query($xpath) as $node) {
- $result[] = new MemberObject($node);
- }
- return $result;
+ return $result;
+ }
+
+ /**
+ * @param $name
+ */
+ public function addMember($name): MemberObject {
+ $member = new MemberObject($this->rootNode->appendElementNS(self::XMLNS, 'member'));
+ $member->setName($name);
+
+ return $member;
+ }
+
+ public function getExportedMembers(): array {
+ $result = [];
+ $xpath = 'phpdox:member[@visibility="public" or @visibility="protected"]';
+
+ foreach ($this->rootNode->query($xpath) as $node) {
+ $result[] = new MemberObject($node);
}
- /**
- * @param $name
- *
- * @return ConstantObject
- */
- public function addConstant($name) {
- $const = new ConstantObject($this->rootNode->appendElementNS(self::XMLNS, 'constant'));
- $const->setName($name);
- return $const;
- }
-
- /**
- * @return array
- */
- public function getConstants() {
- $result = array();
- $xpath = 'phpdox:constant';
- foreach($this->rootNode->query($xpath) as $node) {
- $result[] = new ConstantObject($node);
- }
- return $result;
+ return $result;
+ }
+
+ /**
+ * @param $name
+ */
+ public function addConstant($name): ConstantObject {
+ $const = new ConstantObject($this->rootNode->appendElementNS(self::XMLNS, 'constant'));
+ $const->setName($name);
+
+ return $const;
+ }
+
+ public function getConstants(): array {
+ $result = [];
+ $xpath = 'phpdox:constant';
+
+ foreach ($this->rootNode->query($xpath) as $node) {
+ $result[] = new ConstantObject($node);
}
- /**
- * @param AbstractUnitObject $unit
- */
- public function importExports(AbstractUnitObject $unit, $container = 'parent') {
+ return $result;
+ }
- $parent = $this->rootNode->queryOne(sprintf('//phpdox:%s[@full="%s"]', $container, $unit->getName()));
- if ($parent instanceof fDOMElement) {
- $parent->parentNode->removeChild($parent);
- }
+ public function importExports(self $unit, $container = 'parent'): void {
+ $parent = $this->rootNode->queryOne(\sprintf('//phpdox:%s[@full="%s"]', $container, $unit->getName()));
- $parent = $this->rootNode->appendElementNS( self::XMLNS, $container);
- $parent->setAttribute('full', $unit->getName());
- $parent->setAttribute('namespace', $unit->getNamespace());
- $parent->setAttribute('name', $unit->getLocalName());
-
- if ($unit->hasExtends()) {
- foreach($unit->getExtends() as $name) {
- $extends = $parent->appendElementNS( self::XMLNS, 'extends');
- $this->setName($name, $extends);
- }
- }
+ if ($parent instanceof fDOMElement) {
+ $parent->parentNode->removeChild($parent);
+ }
- if ($unit->hasImplements()) {
- foreach($unit->getImplements() as $name) {
- $implements = $parent->appendElementNS( self::XMLNS, 'implements');
- $this->setName($name, $implements);
- }
- }
+ $parent = $this->rootNode->appendElementNS(self::XMLNS, $container);
+ $parent->setAttribute('full', $unit->getName());
+ $parent->setAttribute('namespace', $unit->getNamespace());
+ $parent->setAttribute('name', $unit->getLocalName());
- if ($unit->usesTraits()) {
- foreach($unit->getUsedTraits() as $name) {
- $uses = $parent->appendElementNS( self::XMLNS, 'uses');
- $this->setName($name, $uses);
- }
+ if ($unit->hasExtends()) {
+ foreach ($unit->getExtends() as $name) {
+ $extends = $parent->appendElementNS(self::XMLNS, 'extends');
+ $this->setName($name, $extends);
}
+ }
- foreach($unit->getConstants() as $constant) {
- $parent->appendChild( $this->dom->importNode($constant->export(), TRUE) );
+ if ($unit->hasImplements()) {
+ foreach ($unit->getImplements() as $name) {
+ $implements = $parent->appendElementNS(self::XMLNS, 'implements');
+ $this->setName($name, $implements);
}
+ }
- foreach($unit->getExportedMembers() as $member) {
- $memberNode = $this->dom->importNode($member->export(), TRUE);
- $this->adjustStaticResolution($memberNode);
- $parent->appendChild($memberNode);
+ if ($unit->usesTraits()) {
+ foreach ($unit->getUsedTraits() as $name) {
+ $uses = $parent->appendElementNS(self::XMLNS, 'uses');
+ $this->setName($name, $uses);
}
+ }
- foreach($unit->getExportedMethods() as $method) {
- $methodNode = $this->dom->importNode($method->export(), TRUE);
- $this->adjustStaticResolution($methodNode);
- $parent->appendChild( $methodNode );
- if ($this->hasMethod($method->getName())) {
- $unitMethod = $this->getMethod($method->getName());
- if ($unitMethod->hasInheritDoc()) {
- $unitMethod->inhertDocBlock($method);
- }
- }
- }
+ foreach ($unit->getConstants() as $constant) {
+ $parent->appendChild($this->dom->importNode($constant->export(), true));
}
- public function importTraitExports(AbstractUnitObject $trait, TraitUseObject $use) {
+ foreach ($unit->getExportedMembers() as $member) {
+ $memberNode = $this->dom->importNode($member->export(), true);
+ $this->adjustStaticResolution($memberNode);
+ $parent->appendChild($memberNode);
+ }
- $container = $this->rootNode->queryOne(
- sprintf(
- 'phpdox:trait[@full="%s"]',
- $trait->getName()
- )
- );
- if ($container instanceof fDOMElement) {
- $container->parentNode->removeChild($container);
- }
+ foreach ($unit->getExportedMethods() as $method) {
+ $methodNode = $this->dom->importNode($method->export(), true);
+ $this->adjustStaticResolution($methodNode);
+ $parent->appendChild($methodNode);
- $container = $this->rootNode->appendElementNS( self::XMLNS, 'trait');
- $this->setName($trait->getName(), $container);
+ if ($this->hasMethod($method->getName())) {
+ $unitMethod = $this->getMethod($method->getName());
- if ($trait->hasExtends()) {
- foreach($trait->getExtends() as $name) {
- $extends = $container->appendElementNS( self::XMLNS, 'extends');
- $this->setName($name, $extends);
+ if ($unitMethod->hasInheritDoc()) {
+ $unitMethod->inhertDocBlock($method);
}
}
+ }
+ }
- if ($trait->usesTraits()) {
- foreach($trait->getUsedTraits() as $name) {
- $used = $container->appendElementNS( self::XMLNS, 'uses');
- $this->setName($name, $used);
- }
- }
+ public function importTraitExports(self $trait, TraitUseObject $use): void {
+ $container = $this->rootNode->queryOne(
+ \sprintf(
+ 'phpdox:trait[@full="%s"]',
+ $trait->getName()
+ )
+ );
- foreach($trait->getConstants() as $constant) {
- $container->appendChild( $this->dom->importNode($constant->export(), TRUE) );
+ if ($container instanceof fDOMElement) {
+ $container->parentNode->removeChild($container);
+ }
+
+ $container = $this->rootNode->appendElementNS(self::XMLNS, 'trait');
+ $this->setName($trait->getName(), $container);
+
+ if ($trait->hasExtends()) {
+ foreach ($trait->getExtends() as $name) {
+ $extends = $container->appendElementNS(self::XMLNS, 'extends');
+ $this->setName($name, $extends);
}
+ }
- foreach($trait->getExportedMembers() as $member) {
- $memberNode = $this->dom->importNode($member->export(), TRUE);
- $this->adjustStaticResolution($memberNode);
- $container->appendChild($memberNode);
+ if ($trait->usesTraits()) {
+ foreach ($trait->getUsedTraits() as $name) {
+ $used = $container->appendElementNS(self::XMLNS, 'uses');
+ $this->setName($name, $used);
}
+ }
- $ambiguousContainer = $this->dom->queryOne('//phpdox:ambiguous[@type="trait-alias"]');
- foreach($trait->getExportedMethods() as $method) {
- $methodName = $method->getName();
- $methodNode = $this->dom->importNode($method->export(), TRUE);
+ foreach ($trait->getConstants() as $constant) {
+ $container->appendChild($this->dom->importNode($constant->export(), true));
+ }
- if (!$use->isExcluded($methodName)) {
- $container->appendChild($methodNode);
- }
+ foreach ($trait->getExportedMembers() as $member) {
+ $memberNode = $this->dom->importNode($member->export(), true);
+ $this->adjustStaticResolution($memberNode);
+ $container->appendChild($memberNode);
+ }
+
+ $ambiguousContainer = $this->dom->queryOne('//phpdox:ambiguous[@type="trait-alias"]');
- $this->adjustStaticResolution($methodNode);
+ foreach ($trait->getExportedMethods() as $method) {
+ $methodName = $method->getName();
+ $methodNode = $this->dom->importNode($method->export(), true);
+
+ if (!$use->isExcluded($methodName)) {
+ $container->appendChild($methodNode);
+ }
+
+ $this->adjustStaticResolution($methodNode);
+
+ if ($ambiguousContainer !== null) {
+ $ambiguousMethod = $ambiguousContainer->queryOne(
+ \sprintf('phpdox:alias[@method="%s"]', $methodName)
+ );
- if ($ambiguousContainer !== NULL) {
- $ambiguousMethod = $ambiguousContainer->queryOne(
- sprintf('phpdox:alias[@method="%s"]', $methodName)
+ if ($ambiguousMethod !== null) {
+ $usesNode = $this->dom->queryOne(
+ \sprintf('//phpdox:uses[@full="%s"]', $trait->getName())
);
- if ($ambiguousMethod !== null) {
- $usesNode = $this->dom->queryOne(
- sprintf('//phpdox:uses[@full="%s"]', $trait->getName())
- );
- $usesNode->appendChild($ambiguousMethod);
- if ($ambiguousContainer->query('phpdox:alias')->length === 0) {
- $ambiguousContainer->parentNode->removeChild($ambiguousContainer);
- $ambiguousContainer = NULL;
- }
+ $usesNode->appendChild($ambiguousMethod);
+
+ if ($ambiguousContainer->query('phpdox:alias')->length === 0) {
+ $ambiguousContainer->parentNode->removeChild($ambiguousContainer);
+ $ambiguousContainer = null;
}
}
+ }
- $aliasNode = NULL;
- if ($use->isAliased($methodName)) {
- $aliasNode = $methodNode->cloneNode(true);
- $aliasNode->setAttribute('original', $aliasNode->getAttribute('name'));
- $aliasNode->setAttribute('name', $use->getAliasedName($methodName));
- if ($use->hasAliasedModifier($methodName)) {
- $aliasNode->setAttribute('visibility', $use->getAliasedModifier($methodName));
- }
- $container->appendChild($aliasNode);
+ $aliasNode = null;
+
+ if ($use->isAliased($methodName)) {
+ $aliasNode = $methodNode->cloneNode(true);
+ $aliasNode->setAttribute('original', $aliasNode->getAttribute('name'));
+ $aliasNode->setAttribute('name', $use->getAliasedName($methodName));
+
+ if ($use->hasAliasedModifier($methodName)) {
+ $aliasNode->setAttribute('visibility', $use->getAliasedModifier($methodName));
}
+ $container->appendChild($aliasNode);
}
+ }
+ }
+
+ /**
+ * @param $name
+ */
+ protected function setName($name, fDOMElement $ctx): void {
+ $parts = \explode('\\', $name);
+ $local = \array_pop($parts);
+ $namespace = \implode('\\', $parts);
+ $ctx->setAttribute('full', $name);
+ $ctx->setAttribute('namespace', $namespace);
+ $ctx->setAttribute('name', $local);
+ }
+
+ protected function getRootNode() {
+ return $this->rootNode;
+ }
+ /**
+ * @param $containerName
+ * @param $elementName
+ */
+ protected function addToContainer($containerName, $elementName): fDOMElement {
+ $container = $this->rootNode->queryOne('phpdox:' . $containerName);
+
+ if (!$container) {
+ $container = $this->rootNode->appendElementNS(self::XMLNS, $containerName);
}
- private function hasMethod($name) {
- return $this->dom->query(
- sprintf('phpdox:method[@name="%s"]', $name)
+ return $container->appendElementNS(self::XMLNS, $elementName);
+ }
+
+ private function hasMethod($name) {
+ return $this->dom->query(
+ \sprintf('phpdox:method[@name="%s"]', $name)
)->length > 0;
- }
+ }
- private function getMethod($name) {
- $ctx = $this->dom->queryOne(
- sprintf('phpdox:method[@name="%s"]', $name)
+ private function getMethod($name) {
+ $ctx = $this->dom->queryOne(
+ \sprintf('phpdox:method[@name="%s"]', $name)
+ );
+
+ if (!$ctx) {
+ throw new UnitObjectException(
+ \sprintf('Method "%s" not found', $name),
+ UnitObjectException::NoSuchMethod
);
- if (!$ctx) {
- throw new UnitObjectException(
- sprintf('Method "%s" not found', $name),
- UnitObjectException::NoSuchMethod
- );
- }
- return new MethodObject($this, $ctx);
}
- private function adjustStaticResolution(fDOMElement $ctx) {
- $container = $ctx->queryOne('.//phpdox:docblock/phpdox:return|.//phpdox:docblock/phpdox:var');
- if (!$container || $container->getAttribute('resolution') !== 'static') {
- return;
- }
- $type = $container->queryOne('phpdox:type');
- if (!$type) {
- return;
- }
- foreach(array('full','namespace','name') as $attribute) {
- $type->setAttribute($attribute, $this->rootNode->getAttribute($attribute));
- }
+ return new MethodObject($this, $ctx);
+ }
+
+ private function adjustStaticResolution(fDOMElement $ctx): void {
+ $container = $ctx->queryOne('.//phpdox:docblock/phpdox:return|.//phpdox:docblock/phpdox:var');
+
+ if (!$container || $container->getAttribute('resolution') !== 'static') {
+ return;
}
+ $type = $container->queryOne('phpdox:type');
- /**
- * @param $containerName
- * @param $elementName
- *
- * @return fDOMElement
- */
- protected function addToContainer($containerName, $elementName) {
- $container = $this->rootNode->queryOne('phpdox:' . $containerName);
- if (!$container) {
- $container = $this->rootNode->appendElementNS(self::XMLNS, $containerName);
- }
- return $container->appendElementNS(self::XMLNS, $elementName);
+ if (!$type) {
+ return;
}
+ foreach (['full', 'namespace', 'name'] as $attribute) {
+ $type->setAttribute($attribute, $this->rootNode->getAttribute($attribute));
+ }
}
-
}
diff -Nru phpdox-0.11.2/src/collector/project/AbstractVariableObject.php phpdox-0.12.0/src/collector/project/AbstractVariableObject.php
--- phpdox-0.11.2/src/collector/project/AbstractVariableObject.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/collector/project/AbstractVariableObject.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,150 +1,96 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
-namespace TheSeer\phpDox\Collector {
-
- use TheSeer\fDOM\fDOMElement;
-
- /**
- * Class AbstractVariableObject
- *
- * @package TheSeer\phpDox\Collector
- */
- abstract class AbstractVariableObject {
-
- const XMLNS = 'http://xml.phpdox.net/src';
-
- /**
- * @var \TheSeer\fDOM\fDOMElement
- */
- protected $ctx;
-
- /**
- * @var array
- */
- private $types = array('{unknown}', 'object', 'array', 'int', 'integer','float','string','bool','boolean','resource','callable');
-
- /**
- * @param fDOMElement $ctx
- */
- public function __construct(fDOMElement $ctx) {
- $this->ctx = $ctx;
- }
+ * @var \TheSeer\fDOM\fDOMElement
+ */
+ protected $ctx;
- /**
- * @return fDOMElement
- */
- public function export() {
- return $this->ctx;
- }
+ /**
+ * @var array
+ */
+ private $types = ['{unknown}', 'object', 'array', 'int', 'integer', 'float', 'string', 'bool', 'boolean', 'resource', 'callable'];
- /**
- * @param $line
- */
- public function setLine($line) {
- $this->ctx->setAttribute('line', $line);
- }
+ public function __construct(fDOMElement $ctx) {
+ $this->ctx = $ctx;
+ }
- /**
- * @return string
- */
- public function getLine() {
- return $this->ctx->getAttribute('line');
- }
+ public function export(): fDOMElement {
+ return $this->ctx;
+ }
- /**
- * @param $name
- */
- public function setName($name) {
- $this->ctx->setAttribute('name', $name);
- }
+ /**
+ * @param $line
+ */
+ public function setLine($line): void {
+ $this->ctx->setAttribute('line', $line);
+ }
- /**
- * @return \DOMAttr
- */
- public function getName() {
- return $this->ctx->getAttributeNode('name');
- }
+ public function getLine(): string {
+ return $this->ctx->getAttribute('line');
+ }
- /**
- * @param $value
- */
- public function setDefault($value) {
- $this->ctx->setAttribute('default', $value);
- }
+ /**
+ * @param $name
+ */
+ public function setName($name): void {
+ $this->ctx->setAttribute('name', $name);
+ }
- public function setConstant($const) {
- $this->ctx->setAttribute('constant', $const);
- }
+ public function getName(): \DOMAttr {
+ return $this->ctx->getAttributeNode('name');
+ }
- public function isInternalType($type) {
- return in_array(mb_strtolower($type), $this->types);
- }
+ /**
+ * @param $value
+ */
+ public function setDefault($value): void {
+ $this->ctx->setAttribute('default', $value);
+ }
- /**
- * @param $type
- */
- public function setType($type) {
- if (!$this->isInternalType($type)) {
- $parts = explode('\\', $type);
- $local = array_pop($parts);
- $namespace = join('\\', $parts);
-
- $unit = $this->ctx->appendElementNS(self::XMLNS, 'type');
- $unit->setAttribute('full', $type);
- $unit->setAttribute('namespace', $namespace);
- $unit->setAttribute('name', $local);
- $type = 'object';
- }
- $this->ctx->setAttribute('type', $type);
- }
+ public function setConstant($const): void {
+ $this->ctx->setAttribute('constant', $const);
+ }
- /**
- * @return string
- */
- public function getType() {
- return $this->ctx->getAttribute('type');
- }
+ public function isInternalType($type) {
+ return \in_array(\mb_strtolower((string)$type), $this->types);
+ }
- public function setNullable($isNullable) {
- $this->ctx->setAttribute('nullable', $isNullable ? 'true' : 'false');
+ /**
+ * @param $type
+ */
+ public function setType($type): void {
+ if (!$this->isInternalType($type)) {
+ $parts = \explode('\\', (string)$type);
+ $local = \array_pop($parts);
+ $namespace = \implode('\\', $parts);
+
+ $unit = $this->ctx->appendElementNS(self::XMLNS, 'type');
+ $unit->setAttribute('full', $type);
+ $unit->setAttribute('namespace', $namespace);
+ $unit->setAttribute('name', $local);
+ $type = 'object';
}
+ $this->ctx->setAttribute('type', $type);
+ }
- protected function addInternalType($type) {
- $this->types[] = $type;
- }
+ public function getType(): string {
+ return $this->ctx->getAttribute('type');
+ }
+
+ public function setNullable($isNullable): void {
+ $this->ctx->setAttribute('nullable', $isNullable ? 'true' : 'false');
+ }
+
+ protected function addInternalType($type): void {
+ $this->types[] = $type;
}
}
diff -Nru phpdox-0.11.2/src/collector/project/ClassObject.php phpdox-0.12.0/src/collector/project/ClassObject.php
--- phpdox-0.11.2/src/collector/project/ClassObject.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/collector/project/ClassObject.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,43 +1,6 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
-namespace TheSeer\phpDox\Collector {
-
- class ClassObject extends AbstractUnitObject {
- protected $rootName = 'class';
- }
+
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
-namespace TheSeer\phpDox\Collector {
-
- use TheSeer\fDOM\fDOMElement;
- use TheSeer\phpDox\DocBlock\DocBlock;
-
- class ConstantObject {
-
- protected $ctx;
-
- public function __construct(fDOMElement $ctx) {
- $this->ctx = $ctx;
- $this->setType('{unknown}');
- }
+ctx;
- }
+use TheSeer\fDOM\fDOMElement;
+use TheSeer\phpDox\DocBlock\DocBlock;
- public function setName($name) {
- $this->ctx->setAttribute('name', $name);
- }
+class ConstantObject {
+ protected $ctx;
- public function setValue($value) {
- $this->ctx->setAttribute('value', $value);
- }
+ public function __construct(fDOMElement $ctx) {
+ $this->ctx = $ctx;
+ $this->setType('{unknown}');
+ }
- public function setType($type) {
- $this->ctx->setAttribute('type', $type);
- }
+ public function export() {
+ return $this->ctx;
+ }
- public function setConstantReference($const) {
- $this->ctx->setAttribute('constant', $const);
- }
+ public function setName($name): void {
+ $this->ctx->setAttribute('name', $name);
+ }
- public function setDocBlock(DocBlock $docblock) {
- $docNode = $docblock->asDom($this->ctx->ownerDocument);
- if ($this->ctx->hasChildNodes()) {
- $this->ctx->insertBefore($docblock, $this->ctx->firstChild);
- return;
- }
- $this->ctx->appendChild($docNode);
- }
+ public function setValue($value): void {
+ $this->ctx->setAttribute('value', $value);
+ }
+ public function setType($type): void {
+ $this->ctx->setAttribute('type', $type);
+ }
+
+ public function setConstantReference($const): void {
+ $this->ctx->setAttribute('constant', $const);
+ }
+
+ public function setDocBlock(DocBlock $docblock): void {
+ $docNode = $docblock->asDom($this->ctx->ownerDocument);
+
+ if ($this->ctx->hasChildNodes()) {
+ $this->ctx->insertBefore($docblock, $this->ctx->firstChild);
+
+ return;
+ }
+ $this->ctx->appendChild($docNode);
}
}
diff -Nru phpdox-0.11.2/src/collector/project/DependencyException.php phpdox-0.12.0/src/collector/project/DependencyException.php
--- phpdox-0.11.2/src/collector/project/DependencyException.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/collector/project/DependencyException.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,10 +1,8 @@
-index = $dom;
+ $this->baseDir = \dirname(\str_replace('file:/', '', \urldecode($dom->documentURI)));
+ $this->index->registerNamespace('phpdox', 'http://xml.phpdox.net/src');
+ $this->project = $project;
+ $this->publicOnlyMode = $publicOnlyMode;
+ }
- /**
- * @var fDOMDocument
- */
- private $index;
-
- /**
- * @var Project
- */
- private $project;
-
- /**
- * @var string
- */
- private $baseDir;
-
- /**
- * @var bool
- */
- private $publicOnlyMode;
-
- public function __construct(fDOMDocument $dom, Project $project, $publicOnlyMode) {
- $this->index = $dom;
- $this->baseDir = dirname(urldecode($dom->documentURI));
- $this->index->registerNamespace('phpdox', 'http://xml.phpdox.net/src');
- $this->project = $project;
- $this->publicOnlyMode = $publicOnlyMode;
+ public function getUnitByName($name) {
+ $parts = \explode('\\', $name);
+ $local = \array_pop($parts);
+ $namespace = \implode('\\', $parts);
+ $indexNode = $this->index->queryOne(
+ \sprintf('//phpdox:namespace[@name="%s"]/*[@name="%s"]', $namespace, $local)
+ );
+
+ if (!$indexNode) {
+ throw new DependencyException(
+ \sprintf("Unit '%s' not found", $name),
+ DependencyException::UnitNotFound
+ );
}
- public function getUnitByName($name) {
- $parts = explode('\\', $name);
- $local = array_pop($parts);
- $namespace = join('\\', $parts);
- $indexNode = $this->index->queryOne(
- sprintf('//phpdox:namespace[@name="%s"]/*[@name="%s"]', $namespace, $local));
-
- if (!$indexNode) {
- throw new DependencyException(
- sprintf("Unit '%s' not found", $name),
- DependencyException::UnitNotFound
- );
- }
-
- $dom = new fDOMDocument();
- $dom->load( $this->baseDir . '/' . $indexNode->getAttribute('xml'));
+ $dom = new fDOMDocument();
+ $dom->load($this->baseDir . '/' . $indexNode->getAttribute('xml'));
- if ($this->publicOnlyMode) {
- foreach($dom->query('//*[@visibility and not(@visibility = "public")]') as $node) {
- $node->parentNode->removeChild($node);
- }
+ if ($this->publicOnlyMode) {
+ foreach ($dom->query('//*[@visibility and not(@visibility = "public")]') as $node) {
+ $node->parentNode->removeChild($node);
}
+ }
- switch ($indexNode->localName) {
- case 'interface': {
+ switch ($indexNode->localName) {
+ case 'interface':
+ {
$unit = new InterfaceObject();
$unit->import($dom);
$this->project->addInterface($unit);
+
break;
}
- case 'trait': {
+ case 'trait':
+ {
$unit = new TraitObject();
$unit->import($dom);
$this->project->addTrait($unit);
+
break;
}
- case 'class': {
+ case 'class':
+ {
$unit = new ClassObject();
$unit->import($dom);
$this->project->addClass($unit);
+
break;
}
- default: {
+ default:
+ {
throw new DependencyException(
- sprintf("Invalid unit type '%s'", $indexNode->localName),
+ \sprintf("Invalid unit type '%s'", $indexNode->localName),
DependencyException::InvalidUnitType
);
}
- }
-
- return $unit;
}
+ return $unit;
}
-
}
diff -Nru phpdox-0.11.2/src/collector/project/IndexCollection.php phpdox-0.12.0/src/collector/project/IndexCollection.php
--- phpdox-0.11.2/src/collector/project/IndexCollection.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/collector/project/IndexCollection.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,170 +1,109 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
+ * @var FileInfo
*/
-namespace TheSeer\phpDox\Collector {
+ private $srcDir;
+
+ public function __construct(FileInfo $srcDir) {
+ $this->srcDir = $srcDir;
+ }
- use TheSeer\fDOM\fDOMDocument;
- use TheSeer\fDOM\fDOMElement;
- use TheSeer\phpDox\FileInfo;
+ public function import(fDOMDocument $dom): void {
+ $this->dom = $dom;
+ $this->dom->registerNamespace('phpdox', 'http://xml.phpdox.net/src');
+ }
/**
- *
+ * This method exports all newly registered units into their respective files
+ * and updates the collection file accordingly
*/
- class IndexCollection {
+ public function export(): fDOMDocument {
+ if (!$this->dom instanceof fDOMDocument) {
+ $this->initDomDocument();
+ }
- private $dom;
+ return $this->dom;
+ }
- /**
- * @var FileInfo
- */
- private $srcDir;
+ public function addClass(ClassObject $class): void {
+ $this->addUnit($class, 'class');
+ }
- public function __construct(FileInfo $srcDir) {
- $this->srcDir = $srcDir;
- }
+ public function addInterface(InterfaceObject $interface): void {
+ $this->addUnit($interface, 'interface');
+ }
- private function getRootElement() {
- if (!$this->dom instanceof fDOMDocument) {
- $this->initDomDocument();
- }
- return $this->dom->documentElement;
- }
+ public function addTrait(TraitObject $trait): void {
+ $this->addUnit($trait, 'trait');
+ }
- private function initDomDocument() {
- $this->dom = new fDOMDocument('1.0', 'UTF-8');
- $this->dom->registerNamespace('phpdox', 'http://xml.phpdox.net/src');
- $index = $this->dom->appendElementNS('http://xml.phpdox.net/src', 'index');
- $index->setAttribute('basedir', $this->srcDir->getRealPath());
- }
+ public function findUnitNodesBySrcFile(string $path): \DOMNodeList {
+ $src = \mb_substr($path, \mb_strlen((string)$this->srcDir) + 1);
- /**
- * @param \TheSeer\fDOM\fDOMDocument $dom
- * @return void
- */
- public function import(fDOMDocument $dom) {
- $this->dom = $dom;
- $this->dom->registerNamespace('phpdox', 'http://xml.phpdox.net/src');
- }
+ return $this->getRootElement()->query(\sprintf('//*[@src="%s"]', $src));
+ }
- /**
- * This method exports all newly registered units into their respective files
- * and updates the collection file accordingly
- *
- * @param string $xmlDir
- *
- * @return \TheSeer\fDOM\fDOMDocument
- */
- public function export() {
- if (!$this->dom instanceof fDOMDocument) {
- $this->initDomDocument();
- }
- return $this->dom;
- }
+ /**
+ * @param $namespace
+ * @param $name
+ */
+ public function findUnitNodeByName($namespace, $name): ?fDOMElement {
+ return $this->getRootElement()->queryOne(
+ \sprintf('//phpdox:namespace[@name="%s"]/*[@name="%s"]', $namespace, $name)
+ );
+ }
- /**
- * @param ClassObject $class
- */
- public function addClass(ClassObject $class) {
- $this->addUnit($class, 'class');
+ private function getRootElement() {
+ if (!$this->dom instanceof fDOMDocument) {
+ $this->initDomDocument();
}
- /**
- * @param InterfaceObject $interface
- */
- public function addInterface(InterfaceObject $interface) {
- $this->addUnit($interface, 'interface');
- }
+ return $this->dom->documentElement;
+ }
- /**
- * @param TraitObject $trait
- */
- public function addTrait(TraitObject $trait) {
- $this->addUnit($trait, 'trait');
- }
+ private function initDomDocument(): void {
+ $this->dom = new fDOMDocument('1.0', 'UTF-8');
+ $this->dom->registerNamespace('phpdox', 'http://xml.phpdox.net/src');
+ $index = $this->dom->appendElementNS('http://xml.phpdox.net/src', 'index');
+ $index->setAttribute('basedir', $this->srcDir->getRealPath());
+ }
- /**
- * @param $path
- * @return \DOMNodeList
- */
- public function findUnitNodesBySrcFile($path) {
- $src = mb_substr($path, mb_strlen($this->srcDir) + 1);
- return $this->getRootElement()->query(sprintf('//*[@src="%s"]', $src));
- }
+ private function addUnit(AbstractUnitObject $unit, $type): void {
+ $root = $this->getRootElement();
- /**
- * @param $namespace
- * @param $name
- *
- * @return fDOMElement
- */
- public function findUnitNodeByName($namespace, $name) {
- return $this->getRootElement()->queryOne(
- sprintf('//phpdox:namespace[@name="%s"]/*[@name="%s"]', $namespace, $name));
- }
+ if (!$this->findUnitNodeByName($unit->getNamespace(), $unit->getLocalName())) {
+ $unitNode = $root->appendElementNS('http://xml.phpdox.net/src', $type);
+ $unitNode->setAttribute('name', $unit->getLocalName());
- /**
- * @param AbstractUnitObject $unit
- */
- private function addUnit(AbstractUnitObject $unit, $type) {
- $root = $this->getRootElement();
-
- if (!$this->findUnitNodeByName($unit->getNamespace(), $unit->getLocalName())) {
- $unitNode = $root->appendElementNS('http://xml.phpdox.net/src', $type);
- $unitNode->setAttribute('name', $unit->getLocalName());
-
- $src = $unit->getSourceFilename();
- if ($src != '') {
- $unitNode->setAttribute('src', $src->getRelative($this->srcDir, FALSE));
- }
-
- $desc = $unit->getCompactDescription();
- if ($desc != '') {
- $unitNode->setAttribute('description', $desc);
- }
-
- $xpath = 'phpdox:namespace[@name="' . $unit->getNamespace() . '"]';
- $ctx = $root->queryOne($xpath);
- if (!$ctx) {
- $ctx = $root->appendElementNS('http://xml.phpdox.net/src', 'namespace');
- $ctx->setAttribute('name', $unit->getNamespace());
- }
- $ctx->appendChild($unitNode);
+ $src = $unit->getSourceFilename();
+
+ if ($src !== null) {
+ $unitNode->setAttribute('src', $src->getRelative($this->srcDir, false));
}
- }
- }
+ $desc = $unit->getCompactDescription();
+
+ if ($desc != '') {
+ $unitNode->setAttribute('description', $desc);
+ }
+ $xpath = 'phpdox:namespace[@name="' . $unit->getNamespace() . '"]';
+ $ctx = $root->queryOne($xpath);
+
+ if (!$ctx) {
+ $ctx = $root->appendElementNS('http://xml.phpdox.net/src', 'namespace');
+ $ctx->setAttribute('name', $unit->getNamespace());
+ }
+ $ctx->appendChild($unitNode);
+ }
+ }
}
diff -Nru phpdox-0.11.2/src/collector/project/InlineComment.php phpdox-0.12.0/src/collector/project/InlineComment.php
--- phpdox-0.11.2/src/collector/project/InlineComment.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/collector/project/InlineComment.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,78 +1,82 @@
-startLine = $line;
+ public function __construct($line, $comment) {
+ $this->startLine = $line;
- $dom = new fDOMDocument();
- $this->fragment = $dom->createDocumentFragment();
- $this->parse(
- $this->normalizeSplit($comment)
- );
- }
+ $this->fragment = (new fDOMDocument())->createDocumentFragment();
+ $this->parse(
+ $this->normalizeSplit($comment)
+ );
+ }
- public function getCount() {
- return $this->fragment->childNodes->length;
- }
+ public function getCount() {
+ return $this->fragment->childNodes->length;
+ }
- public function asDom(fDOMDocument $dom) {
- return $dom->importNode($this->fragment, true);
- }
+ public function asDom(fDOMDocument $dom) {
+ return $dom->importNode($this->fragment, true);
+ }
- private function normalizeSplit($comment) {
- $comment = str_replace(array("\r\n", "\n"), "\n", $comment);
- $res = array();
- foreach(explode("\n", trim($comment)) as $line) {
- $line = trim($line);
- preg_match('=//(.*)$|/\*{1,}(.*)\*/$|/\*{1,}(.*)$|^(.*)\*/$|#(.*)$|\*{1}(.*)$|^(.*)$=', $line, $matches);
- $normalized = trim(end($matches));
- if ($normalized != '') {
- $res[] = $normalized;
- }
+ private function normalizeSplit($comment) {
+ $comment = \str_replace(["\r\n", "\n"], "\n", $comment);
+ $res = [];
+
+ foreach (\explode("\n", \trim($comment)) as $line) {
+ $line = \trim($line);
+ \preg_match('=//(.*)$|/\*{1,}(.*)\*/$|/\*{1,}(.*)$|^(.*)\*/$|#(.*)$|\*{1}(.*)$|^(.*)$=', $line, $matches);
+ $normalized = \trim(\end($matches));
+
+ if ($normalized != '') {
+ $res[] = $normalized;
}
- return $res;
}
- private function parse(array $comments) {
- foreach($comments as $pos => $comment) {
- preg_match('=^@{0,1}(todo|var|fixme):{0,1}(.*)=i', $comment, $matches);
- if (count($matches) != 0) {
- switch(mb_strtolower($matches[1])) {
- case 'var': {
+ return $res;
+ }
+
+ private function parse(array $comments): void {
+ foreach ($comments as $pos => $comment) {
+ \preg_match('=^@{0,1}(todo|var|fixme):{0,1}(.*)=i', $comment, $matches);
+
+ if (\count($matches) != 0) {
+ switch (\mb_strtolower($matches[1])) {
+ case 'var':
+ {
// we ignore @var comments as they are IDE support only
- continue;
+ continue 2;
}
- case 'fixme':
- case 'todo': {
+ case 'fixme':
+ case 'todo':
+ {
$node = $this->fragment->appendChild(
- $this->fragment->ownerDocument->createElementNS(self::XMLNS, mb_strtolower($matches[1]))
+ $this->fragment->ownerDocument->createElementNS(self::XMLNS, \mb_strtolower($matches[1]))
);
- $node->setAttribute('value', trim($matches[2]));
+ $node->setAttribute('value', \trim($matches[2]));
+
break;
}
- }
- } else {
- $node = $this->fragment->appendChild(
- $this->fragment->ownerDocument->createElementNS(self::XMLNS, 'comment')
- );
- $node->setAttribute('value', trim($comment));
- }
- if (isset($node) && $node instanceof fDOMElement) {
- $node->setAttribute('line', $this->startLine + $pos);
}
+ } else {
+ $node = $this->fragment->appendChild(
+ $this->fragment->ownerDocument->createElementNS(self::XMLNS, 'comment')
+ );
+ $node->setAttribute('value', \trim($comment));
}
- }
+ if (isset($node) && $node instanceof fDOMElement) {
+ $node->setAttribute('line', $this->startLine + $pos);
+ }
+ }
}
-
}
diff -Nru phpdox-0.11.2/src/collector/project/InterfaceObject.php phpdox-0.12.0/src/collector/project/InterfaceObject.php
--- phpdox-0.11.2/src/collector/project/InterfaceObject.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/collector/project/InterfaceObject.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,52 +1,14 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
-namespace TheSeer\phpDox\Collector {
+getRootNode()->queryOne(sprintf('phpdox:implementor[@full = "%s"]', $unit->getName())) !== NULL) {
- return;
- }
- $implementor = $this->addToContainer('implementors', $unit->getType());
- $this->setName($unit->getName(), $implementor);
+class InterfaceObject extends AbstractUnitObject {
+ protected $rootName = 'interface';
+ public function addImplementor(AbstractUnitObject $unit): void {
+ if ($this->getRootNode()->queryOne(\sprintf('phpdox:implementor[@full = "%s"]', $unit->getName())) !== null) {
+ return;
}
+ $implementor = $this->addToContainer('implementors', $unit->getType());
+ $this->setName($unit->getName(), $implementor);
}
-
}
diff -Nru phpdox-0.11.2/src/collector/project/MemberObject.php phpdox-0.12.0/src/collector/project/MemberObject.php
--- phpdox-0.11.2/src/collector/project/MemberObject.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/collector/project/MemberObject.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,70 +1,34 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
-namespace TheSeer\phpDox\Collector {
+ctx->setAttribute('static', $isStatic ? 'true' : 'false');
+ }
- /**
- * @param boolean $isStatic
- */
- public function setStatic($isStatic) {
- $this->ctx->setAttribute('static', $isStatic ? 'true' : 'false');
+ /**
+ * @param string $visibility
+ */
+ public function setVisibility($visibility): void {
+ if (!\in_array($visibility, ['public', 'private', 'protected'])) {
+ throw new MethodObjectException("'$visibility' is not valid'", MethodObjectException::InvalidVisibility);
}
+ $this->ctx->setAttribute('visibility', $visibility);
+ }
- /**
- * @param string $visibility
- */
- public function setVisibility($visibility) {
- if (!in_array($visibility, array('public','private','protected'))) {
- throw new MethodObjectException("'$visibility' is not valid'", MethodObjectException::InvalidVisibility);
- }
- $this->ctx->setAttribute('visibility', $visibility);
- }
+ public function setDocBlock(DocBlock $docblock): void {
+ $docNode = $docblock->asDom($this->ctx->ownerDocument);
- public function setDocBlock(DocBlock $docblock) {
- $docNode = $docblock->asDom($this->ctx->ownerDocument);
- if ($this->ctx->hasChildNodes()) {
- $this->ctx->insertBefore($docNode, $this->ctx->firstChild);
- return;
- }
- $this->ctx->appendChild($docNode);
- }
+ if ($this->ctx->hasChildNodes()) {
+ $this->ctx->insertBefore($docNode, $this->ctx->firstChild);
+ return;
+ }
+ $this->ctx->appendChild($docNode);
}
}
diff -Nru phpdox-0.11.2/src/collector/project/MethodObjectException.php phpdox-0.12.0/src/collector/project/MethodObjectException.php
--- phpdox-0.11.2/src/collector/project/MethodObjectException.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/collector/project/MethodObjectException.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,9 +1,6 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
-namespace TheSeer\phpDox\Collector {
-
- use TheSeer\fDOM\fDOMElement;
- use TheSeer\phpDox\DocBlock\DocBlock;
-
- /**
- *
- */
- class MethodObject {
-
- const XMLNS = 'http://xml.phpdox.net/src';
-
- /**
- * @var \TheSeer\fDOM\fDOMElement
- */
- private $ctx;
-
- /**
- * @var AbstractUnitObject
- */
- private $unit;
-
- /**
- * @param AbstractUnitObject $unit
- * @param fDOMElement $ctx
- */
- public function __construct(AbstractUnitObject $unit, fDOMElement $ctx) {
- $this->unit = $unit;
- $this->ctx = $ctx;
- }
+ * @var \TheSeer\fDOM\fDOMElement
+ */
+ private $ctx;
- public function getOwner() {
- return $this->unit;
- }
+ /**
+ * @var AbstractUnitObject
+ */
+ private $unit;
- public function export() {
- return $this->ctx;
- }
+ public function __construct(AbstractUnitObject $unit, fDOMElement $ctx) {
+ $this->unit = $unit;
+ $this->ctx = $ctx;
+ }
- /**
- * @param string $name
- */
- public function setName($name) {
- $this->ctx->setAttribute('name', $name);
- }
+ public function getOwner() {
+ return $this->unit;
+ }
- public function getName() {
- return $this->ctx->getAttribute('name');
- }
- /**
- * @param int $startLine
- */
- public function setStartLine($startLine) {
- $this->ctx->setAttribute('start', $startLine);
- }
+ public function export() {
+ return $this->ctx;
+ }
- /**
- * @param int $endLine
- */
- public function setEndLine($endLine) {
- $this->ctx->setAttribute('end', $endLine);
- }
+ /**
+ * @param string $name
+ */
+ public function setName($name): void {
+ $this->ctx->setAttribute('name', $name);
+ }
- /**
- * @param boolean $isFinal
- */
- public function setFinal($isFinal) {
- $this->ctx->setAttribute('final', $isFinal ? 'true' : 'false');
- }
+ public function getName() {
+ return $this->ctx->getAttribute('name');
+ }
- /**
- * @param boolean $isAbstract
- */
- public function setAbstract($isAbstract) {
- $this->ctx->setAttribute('abstract', $isAbstract ? 'true' : 'false');
- }
+ /**
+ * @param int $startLine
+ */
+ public function setStartLine($startLine): void {
+ $this->ctx->setAttribute('start', $startLine);
+ }
- /**
- * @param boolean $isStatic
- */
- public function setStatic($isStatic) {
- $this->ctx->setAttribute('static', $isStatic ? 'true' : 'false');
- }
+ /**
+ * @param int $endLine
+ */
+ public function setEndLine($endLine): void {
+ $this->ctx->setAttribute('end', $endLine);
+ }
- /**
- * @param string $visibility
- */
- public function setVisibility($visibility) {
- if (!in_array($visibility, array('public','private','protected'))) {
- throw new MethodObjectException("'$visibility' is not valid'", MethodObjectException::InvalidVisibility);
- }
- $this->ctx->setAttribute('visibility', $visibility);
- }
+ /**
+ * @param bool $isFinal
+ */
+ public function setFinal($isFinal): void {
+ $this->ctx->setAttribute('final', $isFinal ? 'true' : 'false');
+ }
- /**
- * @param DocBlock $docblock
- */
- public function setDocBlock(DocBlock $docblock) {
- $docNode = $docblock->asDom($this->ctx->ownerDocument);
-
- if ($this->ctx->hasChildNodes()) {
- $this->ctx->insertBefore($docNode, $this->ctx->firstChild);
- return;
- }
- $this->ctx->appendChild($docNode);
- }
+ /**
+ * @param bool $isAbstract
+ */
+ public function setAbstract($isAbstract): void {
+ $this->ctx->setAttribute('abstract', $isAbstract ? 'true' : 'false');
+ }
- public function hasInheritDoc() {
- return $this->ctx->query('phpdox:docblock[@inherit="true"]')->length > 0;
+ /**
+ * @param bool $isStatic
+ */
+ public function setStatic($isStatic): void {
+ $this->ctx->setAttribute('static', $isStatic ? 'true' : 'false');
+ }
+
+ /**
+ * @param string $visibility
+ */
+ public function setVisibility($visibility): void {
+ if (!\in_array($visibility, ['public', 'private', 'protected'])) {
+ throw new MethodObjectException("'$visibility' is not valid'", MethodObjectException::InvalidVisibility);
}
+ $this->ctx->setAttribute('visibility', $visibility);
+ }
- public function inhertDocBlock(MethodObject $method) {
- $inherit = $method->export()->queryOne('phpdox:docblock');
- if (!$inherit) { // no docblock, no work ;)
- return;
- }
- $docNode = $this->ctx->queryOne('phpdox:docblock');
- if (!$docNode) {
- $this->setDocBlock(new DocBlock());
- $docNode = $this->ctx->queryOne('phpdox:docblock');
- }
-
- $container = $docNode->appendElementNS(self::XMLNS, 'inherited');
- $container->setAttribute(
- $method->getOwner()->getType(),
- $method->getOwner()->getName()
- );
- $container->appendChild($this->ctx->ownerDocument->importNode($inherit, true));
+ public function setDocBlock(DocBlock $docblock): void {
+ $docNode = $docblock->asDom($this->ctx->ownerDocument);
- }
+ if ($this->ctx->hasChildNodes()) {
+ $this->ctx->insertBefore($docNode, $this->ctx->firstChild);
- /**
- * @param string $name
- *
- * @return ReturnTypeObject
- */
- public function setReturnType($name) {
- $returnType = new ReturnTypeObject($this->ctx->appendElementNS(self::XMLNS, 'return'));
- $returnType->setType($name);
- return $returnType;
+ return;
}
+ $this->ctx->appendChild($docNode);
+ }
- /**
- * @param string $name
- *
- * @return ParameterObject
- */
- public function addParameter($name) {
- $parameter = new ParameterObject($this->ctx->appendElementNS(self::XMLNS, 'parameter'));
- $parameter->setName($name);
- return $parameter;
- }
+ public function hasInheritDoc() {
+ return $this->ctx->query('phpdox:docblock[@inherit="true"]')->length > 0;
+ }
- /**
- * @param InlineComment $InlineComment
- */
- public function addInlineComment(InlineComment $InlineComment) {
- $this->getInlineContainer()->appendChild(
- $InlineComment->asDom($this->ctx->ownerDocument)
- );
+ public function inhertDocBlock(self $method): void {
+ $inherit = $method->export()->queryOne('phpdox:docblock');
+
+ if (!$inherit) { // no docblock, no work ;)
+ return;
}
+ $docNode = $this->ctx->queryOne('phpdox:docblock');
- /**
- * @return fDOMElement
- */
- private function getInlineContainer() {
- $node = $this->ctx->queryOne('phpdox:inline');
- if ($node !== NULL) {
- return $node;
- }
- return $this->ctx->appendElementNS(self::XMLNS, 'inline');
+ if (!$docNode) {
+ $this->setDocBlock(new DocBlock());
+ $docNode = $this->ctx->queryOne('phpdox:docblock');
}
+ $container = $docNode->appendElementNS(self::XMLNS, 'inherited');
+ $container->setAttribute(
+ $method->getOwner()->getType(),
+ $method->getOwner()->getName()
+ );
+ $container->appendChild($this->ctx->ownerDocument->importNode($inherit, true));
}
+ /**
+ * @param string $name
+ */
+ public function setReturnType($name): ReturnTypeObject {
+ $returnType = new ReturnTypeObject($this->ctx->appendElementNS(self::XMLNS, 'return'));
+ $returnType->setType($name);
+
+ return $returnType;
+ }
+
+ /**
+ * @param string $name
+ */
+ public function addParameter($name): ParameterObject {
+ $parameter = new ParameterObject($this->ctx->appendElementNS(self::XMLNS, 'parameter'));
+ $parameter->setName($name);
+
+ return $parameter;
+ }
+
+ public function addInlineComment(InlineComment $InlineComment): void {
+ $this->getInlineContainer()->appendChild(
+ $InlineComment->asDom($this->ctx->ownerDocument)
+ );
+ }
+
+ private function getInlineContainer(): fDOMElement {
+ $node = $this->ctx->queryOne('phpdox:inline');
+
+ if ($node !== null) {
+ return $node;
+ }
+
+ return $this->ctx->appendElementNS(self::XMLNS, 'inline');
+ }
}
diff -Nru phpdox-0.11.2/src/collector/project/ParameterObject.php phpdox-0.12.0/src/collector/project/ParameterObject.php
--- phpdox-0.11.2/src/collector/project/ParameterObject.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/collector/project/ParameterObject.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,49 +1,8 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
-namespace TheSeer\phpDox\Collector {
+ctx->setAttribute('byreference', $isRef ? 'true' : 'false');
- }
+class ParameterObject extends AbstractVariableObject {
+ public function setByReference($isRef): void {
+ $this->ctx->setAttribute('byreference', $isRef ? 'true' : 'false');
}
-
}
diff -Nru phpdox-0.11.2/src/collector/project/ProjectException.php phpdox-0.12.0/src/collector/project/ProjectException.php
--- phpdox-0.11.2/src/collector/project/ProjectException.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/collector/project/ProjectException.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,13 +1,12 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
-namespace TheSeer\phpDox\Collector {
-
- use TheSeer\fDOM\fDOMDocument;
- use TheSeer\fDOM\fDOMElement;
- use TheSeer\fDOM\fDOMException;
- use TheSeer\phpDox\FileInfo;
+xmlDir = $xmlDir;
- $this->srcDir = $srcDir;
- $this->initCollections();
- }
-
- /**
- * @return FileInfo
- */
- public function getSourceDir() {
- return $this->srcDir;
- }
-
- /**
- * @return FileInfo
- */
- public function getXmlDir() {
- return $this->xmlDir;
- }
-
- /**
- * @param FileInfo $file
- * @return bool
- */
- public function addFile(SourceFile $file) {
- $isNew = $this->source->addFile($file);
- if ($isNew) {
- $this->removeFileReferences($file->getPathname());
- $this->files[$file->getPathname()] = $file;
- }
- return $isNew;
- }
+ /**
+ * @var FileInfo
+ */
+ private $srcDir;
+
+ /**
+ * @var SourceCollection
+ */
+ private $source;
+
+ /**
+ * @var IndexCollection
+ */
+ private $index;
+
+ /**
+ * @var SourceFile[]
+ */
+ private $files = [];
+
+ private $saveUnits = [];
+
+ private $loadedUnits = [];
- /**
- * @param FileInfo $file
- */
- public function removeFile(FileInfo $file) {
+ /**
+ * @param $srcDir
+ * @param $xmlDir
+ */
+ public function __construct(FileInfo $srcDir, FileInfo $xmlDir) {
+ $this->xmlDir = $xmlDir;
+ $this->srcDir = $srcDir;
+ $this->initCollections();
+ }
+
+ public function getSourceDir(): FileInfo {
+ return $this->srcDir;
+ }
+
+ public function getXmlDir(): FileInfo {
+ return $this->xmlDir;
+ }
+
+ /**
+ * @param FileInfo $file
+ */
+ public function addFile(SourceFile $file): bool {
+ $isNew = $this->source->addFile($file);
+
+ if ($isNew) {
$this->removeFileReferences($file->getPathname());
- unset($this->files[$file->getPathname()]);
- $this->source->removeFile($file);
+ $this->files[$file->getPathname()] = $file;
}
- /**
- * @param ClassObject $class
- */
- public function addClass(ClassObject $class) {
- $this->loadedUnits[$class->getName()] = $class;
- $this->registerForSaving($class);
- $this->index->addClass($class);
- }
-
- /**
- *
- */
- public function addInterface(InterfaceObject $interface) {
- $this->loadedUnits[$interface->getName()] = $interface;
- $this->registerForSaving($interface);
- $this->index->addInterface($interface);
- }
-
- /**
- *
- */
- public function addTrait(TraitObject $trait) {
- $this->loadedUnits[$trait->getName()] = $trait;
- $this->registerForSaving($trait);
- $this->index->addTrait($trait);
- }
-
- /**
- * @return fDOMDocument
- */
- public function getIndex() {
- return $this->index->export();
- }
-
- /**
- * @return fDOMDocument
- */
- public function getSourceTree() {
- return $this->source->export();
- }
-
- /**
- * @return bool
- */
- public function hasNamespaces() {
- return $this->index->export()->query('count(//phpdox:namespace[not(@name="/")])') > 0;
- }
-
- /**
- * @param $namespace
- * @param $name
- * @return fDOMElement
- */
- public function getUnitByName($name) {
- if (isset($this->loadedUnits[$name])) {
- return $this->loadedUnits[$name];
- }
+ return $isNew;
+ }
- $parts = explode('\\', $name);
- $local = array_pop($parts);
- $namespace = join('\\', $parts);
- $indexNode = $this->index->findUnitNodeByName($namespace, $local);
- if (!$indexNode) {
- throw new ProjectException("No unit with name '$name' found");
- }
+ public function removeFile(FileInfo $file): void {
+ $this->removeFileReferences($file->getPathname());
+ unset($this->files[$file->getPathname()]);
+ $this->source->removeFile($file);
+ }
+
+ public function addClass(ClassObject $class): void {
+ $this->loadedUnits[$class->getName()] = $class;
+ $this->registerForSaving($class);
+ $this->index->addClass($class);
+ }
+
+ public function addInterface(InterfaceObject $interface): void {
+ $this->loadedUnits[$interface->getName()] = $interface;
+ $this->registerForSaving($interface);
+ $this->index->addInterface($interface);
+ }
+
+ public function addTrait(TraitObject $trait): void {
+ $this->loadedUnits[$trait->getName()] = $trait;
+ $this->registerForSaving($trait);
+ $this->index->addTrait($trait);
+ }
+
+ public function getIndex(): fDOMDocument {
+ return $this->index->export();
+ }
+
+ public function getSourceTree(): fDOMDocument {
+ return $this->source->export();
+ }
+
+ public function hasNamespaces(): bool {
+ return $this->index->export()->query('count(//phpdox:namespace[not(@name="/")])') > 0;
+ }
+
+ public function getUnitByName(string $name) {
+ if (isset($this->loadedUnits[$name])) {
+ return $this->loadedUnits[$name];
+ }
+
+ $parts = \explode('\\', $name);
+ $local = \array_pop($parts);
+ $namespace = \implode('\\', $parts);
+ $indexNode = $this->index->findUnitNodeByName($namespace, $local);
+
+ if (!$indexNode) {
+ throw new ProjectException("No unit with name '$name' found");
+ }
- switch ($indexNode->localName) {
- case 'interface': {
+ switch ($indexNode->localName) {
+ case 'interface':
+ {
$unit = new InterfaceObject();
+
break;
}
- case 'trait': {
+ case 'trait':
+ {
$unit = new TraitObject();
+
break;
}
- case 'class': {
+ case 'class':
+ {
$unit = new ClassObject();
+
break;
}
- default: {
+ default:
+ {
throw new ProjectException(
- sprintf('Unexpected type "%s"', $indexNode->localName),
+ \sprintf('Unexpected type "%s"', $indexNode->localName),
ProjectException::UnexpectedType
);
}
- }
-
- $dom = new fDOMDocument();
- $dom->load($this->xmlDir . '/' . $indexNode->getAttribute('xml'));
- $unit->import($dom);
-
- return $unit;
}
- /**
- * @return array
- */
- public function cleanVanishedFiles() {
- $files = $this->source->getVanishedFiles();
- foreach ($files as $path) {
- $this->removeFileReferences($path);
- }
- return $files;
- }
+ $dom = new fDOMDocument();
+ $dom->load($this->xmlDir . '/' . $indexNode->getAttribute('xml'));
+ $unit->import($dom);
+
+ return $unit;
+ }
+ public function cleanVanishedFiles(): array {
+ $files = $this->source->getVanishedFiles();
- public function registerForSaving(AbstractUnitObject $unit) {
- $this->saveUnits[$unit->getName()] = $unit;
+ foreach ($files as $path) {
+ $this->removeFileReferences($path);
}
- /**
- * @return array
- */
- public function save() {
- try {
- $map = $this->initDirectories();
+ return $files;
+ }
- $indexDom = $this->index->export();
- $reportUnits = $this->saveUnits;
- foreach($this->saveUnits as $unit) {
- $reportUnits = $this->saveUnit($map, $reportUnits, $unit);
- }
- $indexDom->formatOutput = TRUE;
- $indexDom->preserveWhiteSpace = FALSE;
- $indexDom->save($this->xmlDir . '/index.xml');
+ public function registerForSaving(AbstractUnitObject $unit): void {
+ $this->saveUnits[$unit->getName()] = $unit;
+ }
- $this->saveSources();
+ public function save(): array {
+ try {
+ $map = $this->initDirectories();
- $this->saveUnits = array();
- $this->files = array();
+ $indexDom = $this->index->export();
+ $reportUnits = $this->saveUnits;
- return $reportUnits;
- } catch (\Exception $e) {
- throw new ProjectException(
- sprintf('An error occured while saving the collected data: %s', $e->getMessage()),
- ProjectException::ErrorWhileSaving,
- $e
- );
+ foreach ($this->saveUnits as $unit) {
+ $reportUnits = $this->saveUnit($map, $reportUnits, $unit);
}
+ $indexDom->formatOutput = true;
+ $indexDom->preserveWhiteSpace = false;
+ $indexDom->save($this->xmlDir . '/index.xml');
+
+ $this->saveSources();
+
+ $this->saveUnits = [];
+ $this->files = [];
+
+ return $reportUnits;
+ } catch (\Exception $e) {
+ throw new ProjectException(
+ \sprintf('An error occured while saving the collected data: %s', $e->getMessage()),
+ ProjectException::ErrorWhileSaving,
+ $e
+ );
}
+ }
- /**
- * @param $fname
- *
- * @return array
- */
- private function findAffectedUnits($fname) {
- $affected = array();
- $dom = new fDOMDocument();
- $dom->load($this->xmlDir . '/' . $fname);
- $dom->registerNamespace('phpdox', 'http://xml.phpdox.net/src');
- $extends = $dom->queryOne('//phpdox:extends');
- if ($extends instanceof fDOMElement) {
- try {
- $affected[$extends->getAttribute('full')] = $this->getUnitByName($extends->getAttribute('full'));
- } catch (ProjectException $e) {}
- }
- $implements = $dom->query('//phpdox:implements');
- foreach($implements as $implement) {
- try {
- $affected[$implement->getAttribute('full')] = $this->getUnitByName($implement->getAttribute('full'));
- } catch (ProjectException $e) {}
+ /**
+ * @param $fname
+ */
+ private function findAffectedUnits($fname): array {
+ $affected = [];
+ $dom = new fDOMDocument();
+ $dom->load($this->xmlDir . '/' . $fname);
+ $dom->registerNamespace('phpdox', 'http://xml.phpdox.net/src');
+ $extends = $dom->queryOne('//phpdox:extends');
+
+ if ($extends instanceof fDOMElement) {
+ try {
+ $affected[$extends->getAttribute('full')] = $this->getUnitByName($extends->getAttribute('full'));
+ } catch (ProjectException $e) {
}
- return $affected;
}
+ $implements = $dom->query('//phpdox:implements');
- private function saveUnit(array $map, array $reportUnits, AbstractUnitObject $unit) {
- $indexNode = $this->index->findUnitNodeByName($unit->getNamespace(), $unit->getLocalName());
- if (!$indexNode) {
- throw new ProjectException(
- sprintf(
- "Internal Error: Unit '%s' not found in index (ns: %s, n: %s).",
- $unit->getName(),
- $unit->getNamespace(),
- $unit->getLocalName()
- ),
- ProjectException::UnitNotFoundInIndex
- );
- }
- $name = str_replace('\\', '_', $unit->getName());
- $dom = $unit->export();
- $dom->formatOutput = TRUE;
- $dom->preserveWhiteSpace = FALSE;
- $fname = $map[$dom->documentElement->localName] . '/' . $name . '.xml';
+ foreach ($implements as $implement) {
try {
- $dom->save($this->xmlDir . '/' . $fname);
- } catch (fDOMException $e) {
- throw new ProjectException(
- sprintf(
- "Internal Error: Unit '%s' could not be saved (ns: %s, n: %s).",
- $unit->getName(),
- $unit->getNamespace(),
- $unit->getLocalName()
- ),
- ProjectException::UnitCouldNotBeSaved,
- $e
- );
- }
- if ($indexNode->hasAttribute('xml')) {
- $reportUnits = array_merge($reportUnits, $this->findAffectedUnits($fname));
- } else {
- $indexNode->setAttribute('xml', $fname);
+ $affected[$implement->getAttribute('full')] = $this->getUnitByName($implement->getAttribute('full'));
+ } catch (ProjectException $e) {
}
+ }
- return $reportUnits;
+ return $affected;
+ }
+
+ private function saveUnit(array $map, array $reportUnits, AbstractUnitObject $unit) {
+ $indexNode = $this->index->findUnitNodeByName($unit->getNamespace(), $unit->getLocalName());
+
+ if (!$indexNode) {
+ throw new ProjectException(
+ \sprintf(
+ "Internal Error: Unit '%s' not found in index (ns: %s, n: %s).",
+ $unit->getName(),
+ $unit->getNamespace(),
+ $unit->getLocalName()
+ ),
+ ProjectException::UnitNotFoundInIndex
+ );
+ }
+ $name = \str_replace('\\', '_', $unit->getName());
+ $dom = $unit->export();
+ $dom->formatOutput = true;
+ $dom->preserveWhiteSpace = false;
+ $fname = $map[$dom->documentElement->localName] . '/' . $name . '.xml';
+
+ try {
+ $dom->save($this->xmlDir . '/' . $fname);
+ } catch (fDOMException $e) {
+ throw new ProjectException(
+ \sprintf(
+ "Internal Error: Unit '%s' could not be saved (ns: %s, n: %s).",
+ $unit->getName(),
+ $unit->getNamespace(),
+ $unit->getLocalName()
+ ),
+ ProjectException::UnitCouldNotBeSaved,
+ $e
+ );
+ }
+
+ if ($indexNode->hasAttribute('xml')) {
+ $reportUnits = \array_merge($reportUnits, $this->findAffectedUnits($fname));
+ } else {
+ $indexNode->setAttribute('xml', $fname);
}
- private function initDirectories() {
- $map = array('class' => 'classes', 'trait' => 'traits', 'interface' => 'interfaces');
- foreach ($map as $col) {
- $path = $this->xmlDir . '/' . $col;
- if (!file_exists($path)) {
- mkdir($path, 0777, TRUE);
- }
+ return $reportUnits;
+ }
+
+ private function initDirectories() {
+ $map = ['class' => 'classes', 'trait' => 'traits', 'interface' => 'interfaces'];
+
+ foreach ($map as $col) {
+ $path = $this->xmlDir . '/' . $col;
+
+ if (!\file_exists($path)) {
+ \mkdir($path, 0777, true);
}
- return $map;
}
- /**
- * @return void
- */
- private function initCollections() {
- $this->source = new SourceCollection($this->srcDir);
- $srcFile = $this->xmlDir . '/source.xml';
- if (file_exists($srcFile)) {
- $dom = new fDOMDocument();
- $dom->load($srcFile);
- $this->source->import($dom);
- }
- $this->index = new IndexCollection($this->srcDir);
- $srcFile = $this->xmlDir . '/index.xml';
- if (file_exists($srcFile)) {
- $dom = new fDOMDocument();
- $dom->load($srcFile);
- $this->index->import($dom);
- }
+ return $map;
+ }
+
+ private function initCollections(): void {
+ $this->source = new SourceCollection($this->srcDir);
+ $srcFile = $this->xmlDir . '/source.xml';
+ if (\file_exists($srcFile)) {
+ $dom = new fDOMDocument();
+ $dom->load($srcFile);
+ $this->source->import($dom);
}
- /**
- * @param string $path
- */
- private function removeFileReferences($path) {
- foreach($this->index->findUnitNodesBySrcFile($path) as $node) {
- /** @var $node \DOMElement */
- $fname = $this->xmlDir . '/' . $node->getAttribute('xml');
- if (file_exists($fname)) {
- unlink($fname);
- }
- $node->parentNode->removeChild($node);
+ $this->index = new IndexCollection($this->srcDir);
+ $srcFile = $this->xmlDir . '/index.xml';
+
+ if (\file_exists($srcFile)) {
+ $dom = new fDOMDocument();
+ $dom->load($srcFile);
+ $this->index->import($dom);
+ }
+ }
+
+ /**
+ * @param string $path
+ */
+ private function removeFileReferences($path): void {
+ foreach ($this->index->findUnitNodesBySrcFile($path) as $node) {
+ /** @var $node \DOMElement */
+ $fname = $this->xmlDir . '/' . $node->getAttribute('xml');
+
+ if (\file_exists($fname)) {
+ \unlink($fname);
}
+ $node->parentNode->removeChild($node);
}
+ }
- private function saveSources() {
- foreach($this->files as $file) {
- $tokenDom = $file->getTokens();
- $tokenDom->formatOutput = TRUE;
- $tokenDom->preserveWhiteSpace = FALSE;
- $relName = 'tokens/' . $file->getRelative($this->srcDir, FALSE) . '.xml';
- $fname = $this->xmlDir . '/' . $relName;
- $dir = dirname($fname);
- if (!file_exists($dir)) {
- mkdir($dir, 0777, true);
- }
- try {
- $tokenDom->save($fname);
- } catch (fDOMException $e) {
- throw new ProjectException(
- sprintf(
- "Internal Error: Token xml file '%s' could not be saved.",
- $fname
- ),
- ProjectException::UnitCouldNotBeSaved,
- $e
- );
- }
- $this->source->setTokenFileReference($file, $relName);
+ private function saveSources(): void {
+ foreach ($this->files as $file) {
+ $tokenDom = $file->getTokens();
+ $tokenDom->formatOutput = true;
+ $tokenDom->preserveWhiteSpace = false;
+ $relName = 'tokens/' . $file->getRelative($this->srcDir, false) . '.xml';
+ $fname = $this->xmlDir . '/' . $relName;
+ $dir = \dirname($fname);
+
+ if (!\file_exists($dir)) {
+ \mkdir($dir, 0777, true);
}
- $sourceDom = $this->source->export();
- $sourceDom->formatOutput = TRUE;
- $sourceDom->preserveWhiteSpace = FALSE;
- $sourceDom->save($this->xmlDir . '/source.xml');
+ try {
+ $tokenDom->save($fname);
+ } catch (fDOMException $e) {
+ throw new ProjectException(
+ \sprintf(
+ "Internal Error: Token xml file '%s' could not be saved.",
+ $fname
+ ),
+ ProjectException::UnitCouldNotBeSaved,
+ $e
+ );
+ }
+ $this->source->setTokenFileReference($file, $relName);
}
+ $sourceDom = $this->source->export();
+ $sourceDom->formatOutput = true;
+ $sourceDom->preserveWhiteSpace = false;
+ $sourceDom->save($this->xmlDir . '/source.xml');
}
-
}
diff -Nru phpdox-0.11.2/src/collector/project/ReturnTypeObject.php phpdox-0.12.0/src/collector/project/ReturnTypeObject.php
--- phpdox-0.11.2/src/collector/project/ReturnTypeObject.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/collector/project/ReturnTypeObject.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,50 +1,11 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
-namespace TheSeer\phpDox\Collector {
+addInternalType('void');
- }
+use TheSeer\fDOM\fDOMElement;
+class ReturnTypeObject extends AbstractVariableObject {
+ public function __construct(fDOMElement $ctx) {
+ parent::__construct($ctx);
+ $this->addInternalType('void');
}
-
}
diff -Nru phpdox-0.11.2/src/collector/project/SourceCollectionException.php phpdox-0.12.0/src/collector/project/SourceCollectionException.php
--- phpdox-0.11.2/src/collector/project/SourceCollectionException.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/collector/project/SourceCollectionException.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,9 +1,6 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
+ * @var FileInfo
*/
-namespace TheSeer\phpDox\Collector {
+ private $srcDir;
- use TheSeer\phpDox\FileInfo;
- use TheSeer\fDOM\fDOMDocument;
- use TheSeer\fDOM\fDOMElement;
-
- class SourceCollection {
-
- /**
- * @var FileInfo
- */
- private $srcDir;
-
- /**
- * @var fDOMElement[]
- */
- private $original = array();
-
- /**
- * @var fDOMElement[]
- */
- private $collection = array();
-
- private $workDom;
-
- public function __construct(FileInfo $srcDir) {
- $this->srcDir = $srcDir;
- $this->workDom = new fDOMDocument();
- $this->workDom->registerNamespace('phpdox', 'http://xml.phpdox.net/src');
- $this->workDom->appendElementNS('http://xml.phpdox.net/src', 'source');
- }
-
- public function import(fDOMDocument $dom) {
- $dom->registerNamespace('phpdox', 'http://xml.phpdox.net/src');
- $dir = $dom->queryOne('/phpdox:source/phpdox:dir');
- if (!$dir) {
- return;
- }
- $this->importDirNode($dir, '');
+ /**
+ * @var fDOMElement[]
+ */
+ private $original = [];
+
+ /**
+ * @var fDOMElement[]
+ */
+ private $collection = [];
+
+ private $workDom;
+
+ public function __construct(FileInfo $srcDir) {
+ $this->srcDir = $srcDir;
+ $this->workDom = new fDOMDocument();
+ $this->workDom->registerNamespace('phpdox', 'http://xml.phpdox.net/src');
+ $this->workDom->appendElementNS('http://xml.phpdox.net/src', 'source');
+ }
+
+ public function import(fDOMDocument $dom): void {
+ $dom->registerNamespace('phpdox', 'http://xml.phpdox.net/src');
+ $dir = $dom->queryOne('/phpdox:source/phpdox:dir');
+
+ if (!$dir) {
+ return;
}
+ $this->importDirNode($dir, '');
+ }
- public function addFile(SourceFile $file) {
- $path = $file->getRealPath();
- $node = $this->workDom->createElementNS('http://xml.phpdox.net/src', 'file');
- $node->setAttribute('name', basename($file->getBasename()));
- $node->setAttribute('size', $file->getSize());
- $node->setAttribute('time', date('c', $file->getMTime()));
- $node->setAttribute('unixtime', $file->getMTime());
- $node->setAttribute('sha1', sha1_file($file->getPathname()));
- $this->collection[$path] = $node;
- $changed = $this->isChanged($path);
- if (!$changed) {
- $node->setAttribute('xml', $this->original[$path]->getAttribute('xml'));
- }
- return $changed;
+ public function addFile(SourceFile $file) {
+ $path = $file->getRealPath();
+ $node = $this->workDom->createElementNS('http://xml.phpdox.net/src', 'file');
+ $node->setAttribute('name', \basename($file->getBasename()));
+ $node->setAttribute('size', $file->getSize());
+ $node->setAttribute('time', \date('c', $file->getMTime()));
+ $node->setAttribute('unixtime', $file->getMTime());
+ $node->setAttribute('sha1', \sha1_file($file->getPathname()));
+ $this->collection[$path] = $node;
+ $changed = $this->isChanged($path);
+
+ if (!$changed) {
+ $node->setAttribute('xml', $this->original[$path]->getAttribute('xml'));
+ }
+
+ return $changed;
+ }
+
+ public function setTokenFileReference(SourceFile $file, $tokenPath): void {
+ $path = $file->getRealPath();
+
+ if (!isset($this->collection[$path])) {
+ throw new SourceCollectionException(
+ \sprintf('File %s not found in collection', $path),
+ SourceCollectionException::SourceNotFound
+ );
+ }
+ $this->collection[$path]->setAttribute('xml', $tokenPath);
+ }
+
+ public function removeFile(FileInfo $file): void {
+ if (!isset($this->collection[$file->getRealPath()])) {
+ throw new SourceCollectionException(
+ \sprintf('File %s not found in collection', $file->getRealPath()),
+ SourceCollectionException::SourceNotFound
+ );
}
+ unset($this->collection[$file->getRealPath()]);
+ }
- public function setTokenFileReference(SourceFile $file, $tokenPath) {
- $path = $file->getRealPath();
+ public function getVanishedFiles() {
+ $list = [];
+
+ foreach (\array_keys($this->original) as $path) {
if (!isset($this->collection[$path])) {
- throw new SourceCollectionException(
- sprintf("File %s not found in collection", $path),
- SourceCollectionException::SourceNotFound
- );
+ $list[] = $path;
}
- $this->collection[$path]->setAttribute('xml', $tokenPath);
}
- public function removeFile(FileInfo $file) {
- if (!isset($this->collection[$file->getRealPath()])) {
- throw new SourceCollectionException(
- sprintf("File %s not found in collection", $file->getRealPath()),
- SourceCollectionException::SourceNotFound
- );
- }
- unset($this->collection[$file->getRealPath()]);
+ return $list;
+ }
+
+ public function export($collapse = false) {
+ if (\count($this->collection) == 0) {
+ return $this->workDom;
}
- public function getVanishedFiles() {
- $list = array();
- foreach(array_keys($this->original) as $path) {
- if (!isset($this->collection[$path])) {
- $list[] = $path;
- }
- }
- return $list;
+ $root = $this->workDom->documentElement;
+
+ while ($root->hasChildNodes()) {
+ $root->nodeValue = null;
}
- public function export($collapse = false) {
- if (count($this->collection) == 0) {
- return $this->workDom;
- }
+ foreach ($this->collection as $path => $file) {
+ $pathInfo = new FileInfo($path);
+ $dirs = \explode('/', \dirname((string)$pathInfo->getRelative($this->srcDir)));
+ $dirs[0] = $this->srcDir->getRealPath();
+ $ctx = $root;
- $root = $this->workDom->documentElement;
- while($root->hasChildNodes()) {
- $root->nodeValue = null;
- }
+ foreach ($dirs as $dir) {
+ $node = $ctx->queryOne('phpdox:dir[@name="' . $dir . '"]');
- foreach ($this->collection as $path => $file) {
- $pathInfo = new FileInfo($path);
- $dirs = explode('/', dirname($pathInfo->getRelative($this->srcDir)));
- $dirs[0] = $this->srcDir->getRealPath();
- $ctx = $root;
- foreach ($dirs as $dir) {
- $node = $ctx->queryOne('phpdox:dir[@name="' . $dir . '"]');
- if (!$node) {
- $node = $ctx->appendElementNS('http://xml.phpdox.net/src', 'dir');
- $node->setAttribute('name', $dir);
- }
- $ctx = $node;
+ if (!$node) {
+ $node = $ctx->appendElementNS('http://xml.phpdox.net/src', 'dir');
+ $node->setAttribute('name', $dir);
}
- $ctx->appendChild($this->workDom->importNode($file, TRUE));
+ $ctx = $node;
}
+ $ctx->appendChild($this->workDom->importNode($file, true));
+ }
- $this->collection = array();
+ $this->collection = [];
- if ($collapse) {
- $this->collapseDirectory();
- }
- return $this->workDom;
+ if ($collapse) {
+ $this->collapseDirectory();
}
- private function importDirNode(fDOMElement $dir, $path) {
- $path .= $dir->getAttribute('name');
- foreach($dir->query('phpdox:file') as $file) {
- $this->original[ $path . '/' . $file->getAttribute('name')] = $file;
- }
- foreach($dir->query('phpdox:dir') as $child) {
- $this->importDirNode($child, $path . '/');
- }
+ return $this->workDom;
+ }
+
+ private function importDirNode(fDOMElement $dir, $path): void {
+ $path .= $dir->getAttribute('name');
+
+ foreach ($dir->query('phpdox:file') as $file) {
+ $this->original[$path . '/' . $file->getAttribute('name')] = $file;
}
- private function isChanged($path) {
- if (!isset($this->original[$path])) {
- return true;
- }
- $org = $this->original[$path];
- $new = $this->collection[$path];
- return $org->getAttribute('sha1') != $new->getAttribute('sha1');
+ foreach ($dir->query('phpdox:dir') as $child) {
+ $this->importDirNode($child, $path . '/');
}
+ }
- private function collapseDirectory() {
- $first = $this->workDom->queryOne('/phpdox:source/phpdox:dir');
- if ($first->query('phpdox:file')->length == 0 &&
- $first->query('phpdox:dir')->length == 1) {
- $dir = $first->queryOne('phpdox:dir');
- foreach($dir->query('*') as $child) {
- $first->appendChild($child);
- }
- $first->setAttribute('name', $first->getAttribute('name') . '/' . $dir->getAttribute('name'));
- $first->removeChild($dir);
- $this->collapseDirectory();
- }
+ private function isChanged($path) {
+ if (!isset($this->original[$path])) {
+ return true;
}
+ $org = $this->original[$path];
+ $new = $this->collection[$path];
+ return $org->getAttribute('sha1') != $new->getAttribute('sha1');
}
+ private function collapseDirectory(): void {
+ $first = $this->workDom->queryOne('/phpdox:source/phpdox:dir');
+
+ if ($first->query('phpdox:file')->length == 0 &&
+ $first->query('phpdox:dir')->length == 1) {
+ $dir = $first->queryOne('phpdox:dir');
+
+ foreach ($dir->query('*') as $child) {
+ $first->appendChild($child);
+ }
+ $first->setAttribute('name', $first->getAttribute('name') . '/' . $dir->getAttribute('name'));
+ $first->removeChild($dir);
+ $this->collapseDirectory();
+ }
+ }
}
diff -Nru phpdox-0.11.2/src/collector/project/SourceFile.php phpdox-0.12.0/src/collector/project/SourceFile.php
--- phpdox-0.11.2/src/collector/project/SourceFile.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/collector/project/SourceFile.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,111 +1,108 @@
-srcDir = $srcDir;
- $this->encoding = $encoding;
+use TheSeer\fDOM\fDOMDocument;
+use TheSeer\fDOM\fDOMElement;
+use TheSeer\phpDox\Collector\Backend\SourceFileException;
+use TheSeer\phpDox\FileInfo;
+
+class SourceFile extends FileInfo {
+ /**
+ * PHPDOX Namespace
+ */
+ public const XMLNS = 'http://xml.phpdox.net/src';
+
+ /**
+ * @var string
+ */
+ private $src;
+
+ /**
+ * @var FileInfo
+ */
+ private $srcDir;
+
+ /**
+ * @var
+ */
+ private $encoding;
+
+ public function __construct($file_name, FileInfo $srcDir = null, $encoding = 'auto') {
+ parent::__construct($file_name);
+ $this->srcDir = $srcDir;
+ $this->encoding = $encoding;
+ }
+
+ /**
+ * @throws Backend\SourceFileException
+ */
+ public function getSource(): string {
+ if ($this->src !== null) {
+ return $this->src;
}
- /**
- * @return string
- *
- * @throws Backend\SourceFileException
- */
- public function getSource() {
- if ($this->src !== NULL) {
- return $this->src;
- }
-
- $source = file_get_contents($this->getPathname());
- if ($source == '') {
- $this->src = '';
- return '';
- }
-
- if ($this->encoding == 'auto') {
- $info = new \finfo();
- $this->encoding = $info->file((string)$this, FILEINFO_MIME_ENCODING);
- }
- try {
- $source = iconv($this->encoding, 'UTF-8//TRANSLIT', $source);
- } catch (\ErrorException $e) {
- throw new SourceFileException('Encoding error - conversion to UTF-8 failed', SourceFileException::BadEncoding, $e);
- }
-
- // Replace xml relevant control characters by surrogates
- $this->src = preg_replace_callback(
- '/(?![\x{000d}\x{000a}\x{0009}])\p{C}/u',
- function(array $matches) {
- $unicodeChar = '\u' . (2400 + ord($matches[0]));
- return json_decode('"'.$unicodeChar.'"');
- },
- $source
- );
+ $source = \file_get_contents($this->getPathname());
- return $this->src;
+ if ($source == '') {
+ $this->src = '';
+
+ return '';
}
- /**
- * @return \TheSeer\fDOM\fDOMDocument
- *
- * @throws Backend\SourceFileException
- */
- public function getTokens() {
- $tokenizer = new Tokenizer();
- $dom = $tokenizer->toXML($this->getSource());
- $root = $dom->documentElement;
- $root->insertBefore($this->asNode($dom->documentElement), $root->firstChild);
- return $dom;
+ if ($this->encoding == 'auto') {
+ $info = new \finfo();
+ $this->encoding = $info->file((string)$this, \FILEINFO_MIME_ENCODING);
}
- /**
- * @param fDOMDocument $ctx
- *
- * @return \TheSeer\fDOM\fDOMElement
- */
- public function asNode(fDOMElement $ctx) {
- $fileNode = $ctx->ownerDocument->createElementNS(self::XMLNS, 'file');
- $fileNode->setAttribute('path', $this->getPath());
- $fileNode->setAttribute('file', $this->getBasename());
- $fileNode->setAttribute('realpath', $this->getRealPath());
- $fileNode->setAttribute('size', $this->getSize());
- $fileNode->setAttribute('time', date('c', $this->getMTime()));
- $fileNode->setAttribute('unixtime', $this->getMTime());
- $fileNode->setAttribute('sha1', sha1_file($this->getRealPath()));
- if ($this->srcDir instanceof FileInfo) {
- $fileNode->setAttribute('relative', $this->getRelative($this->srcDir, FALSE));
- }
- return $fileNode;
+ try {
+ $source = \iconv($this->encoding, 'UTF-8//TRANSLIT', $source);
+ } catch (\ErrorException $e) {
+ throw new SourceFileException('Encoding error - conversion to UTF-8 failed', SourceFileException::BadEncoding, $e);
}
+ // Replace xml relevant control characters by surrogates
+ $this->src = \preg_replace_callback(
+ '/(?![\x{000d}\x{000a}\x{0009}])\p{C}/u',
+ function (array $matches) {
+ $unicodeChar = '\u' . (2400 + \ord($matches[0]));
+
+ return \json_decode('"' . $unicodeChar . '"');
+ },
+ $source
+ );
+
+ return $this->src;
}
+ /**
+ * @throws Backend\SourceFileException
+ */
+ public function getTokens(): fDOMDocument {
+ $tokenizer = new Tokenizer();
+ $dom = $tokenizer->toXML($this->getSource());
+ $root = $dom->documentElement;
+ $root->insertBefore($this->asNode($dom->documentElement), $root->firstChild);
+
+ return $dom;
+ }
+
+ /**
+ * @param fDOMDocument $ctx
+ */
+ public function asNode(fDOMElement $ctx): fDOMElement {
+ $fileNode = $ctx->ownerDocument->createElementNS(self::XMLNS, 'file');
+ $fileNode->setAttribute('path', $this->getPath());
+ $fileNode->setAttribute('file', $this->getBasename());
+ $fileNode->setAttribute('realpath', $this->getRealPath());
+ $fileNode->setAttribute('size', $this->getSize());
+ $fileNode->setAttribute('time', \date('c', $this->getMTime()));
+ $fileNode->setAttribute('unixtime', $this->getMTime());
+ $fileNode->setAttribute('sha1', \sha1_file($this->getRealPath()));
+
+ if ($this->srcDir instanceof FileInfo) {
+ $fileNode->setAttribute('relative', $this->getRelative($this->srcDir, false));
+ }
+
+ return $fileNode;
+ }
}
diff -Nru phpdox-0.11.2/src/collector/project/Tokenizer.php phpdox-0.12.0/src/collector/project/Tokenizer.php
--- phpdox-0.11.2/src/collector/project/Tokenizer.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/collector/project/Tokenizer.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,144 +1,142 @@
- 'T_PHPDOX_OPEN_BRACKET',
+ ')' => 'T_PHPDOX_CLOSE_BRACKET',
+ '[' => 'T_PHPDOX_OPEN_SQUARE',
+ ']' => 'T_PHPDOX_CLOSE_SQUARE',
+ '{' => 'T_PHPDOX_OPEN_CURLY',
+ '}' => 'T_PHPDOX_CLOSE_CURLY',
+ ';' => 'T_PHPDOX_SEMICOLON',
+ '.' => 'T_PHPDOX_DOT',
+ ',' => 'T_PHPDOX_COMMA',
+ '=' => 'T_PHPDOX_EQUAL',
+ '<' => 'T_PHPDOX_LT',
+ '>' => 'T_PHPDOX_GT',
+ '+' => 'T_PHPDOX_PLUS',
+ '-' => 'T_PHPDOX_MINUS',
+ '*' => 'T_PHPDOX_MULT',
+ '/' => 'T_PHPDOX_DIV',
+ '?' => 'T_PHPDOX_QUESTION_MARK',
+ '!' => 'T_PHPDOX_EXCLAMATION_MARK',
+ ':' => 'T_PHPDOX_COLON',
+ '"' => 'T_PHPDOX_DOUBLE_QUOTES',
+ '@' => 'T_PHPDOX_AT',
+ '&' => 'T_PHPDOX_AMPERSAND',
+ '%' => 'T_PHPDOX_PERCENT',
+ '|' => 'T_PHPDOX_PIPE',
+ '$' => 'T_PHPDOX_DOLLAR',
+ '^' => 'T_PHPDOX_CARET',
+ '~' => 'T_PHPDOX_TILDE',
+ '`' => 'T_PHPDOX_BACKTICK'
+ ];
+
+ /**
+ * @param string $source
+ *
+ * @throws \TheSeer\fDOM\fDOMException
+ */
+ public function toXML($source): fDOMDocument {
+ $this->writer = new \XMLWriter();
+ $this->writer->openMemory();
+ $this->writer->setIndent(true);
+ $this->writer->startDocument();
+ $this->writer->startElement('source');
+ $this->writer->writeAttribute('xmlns', 'http://xml.phpdox.net/token');
+ $this->writer->startElement('line');
+ $this->writer->writeAttribute('no', '1');
+
+ $this->lastLine = 1;
+ $tokens = \token_get_all($source);
+
+ foreach ($tokens as $pos => $tok) {
+ if (\is_string($tok)) {
+ $line = 1;
+ $step = 1;
- /**
- * @var \XMLWriter
- */
- private $writer;
-
- /**
- * @var int
- */
- private $lastLine = 1;
-
- /**
- * Token Map for "non-tokens"
- *
- * @var array
- */
- private $map = array(
- '(' => 'T_PHPDOX_OPEN_BRACKET',
- ')' => 'T_PHPDOX_CLOSE_BRACKET',
- '[' => 'T_PHPDOX_OPEN_SQUARE',
- ']' => 'T_PHPDOX_CLOSE_SQUARE',
- '{' => 'T_PHPDOX_OPEN_CURLY',
- '}' => 'T_PHPDOX_CLOSE_CURLY',
- ';' => 'T_PHPDOX_SEMICOLON',
- '.' => 'T_PHPDOX_DOT',
- ',' => 'T_PHPDOX_COMMA',
- '=' => 'T_PHPDOX_EQUAL',
- '<' => 'T_PHPDOX_LT',
- '>' => 'T_PHPDOX_GT',
- '+' => 'T_PHPDOX_PLUS',
- '-' => 'T_PHPDOX_MINUS',
- '*' => 'T_PHPDOX_MULT',
- '/' => 'T_PHPDOX_DIV',
- '?' => 'T_PHPDOX_QUESTION_MARK',
- '!' => 'T_PHPDOX_EXCLAMATION_MARK',
- ':' => 'T_PHPDOX_COLON',
- '"' => 'T_PHPDOX_DOUBLE_QUOTES',
- '@' => 'T_PHPDOX_AT',
- '&' => 'T_PHPDOX_AMPERSAND',
- '%' => 'T_PHPDOX_PERCENT',
- '|' => 'T_PHPDOX_PIPE',
- '$' => 'T_PHPDOX_DOLLAR',
- '^' => 'T_PHPDOX_CARET',
- '~' => 'T_PHPDOX_TILDE',
- '`' => 'T_PHPDOX_BACKTICK'
- );
-
- /**
- * @param string $source
- *
- * @return fDOMDocument
- *
- * @throws \TheSeer\fDOM\fDOMException
- */
- public function toXML($source) {
-
- $this->writer = new \XMLWriter();
- $this->writer->openMemory();
- $this->writer->setIndent(true);
- $this->writer->startDocument();
- $this->writer->startElement('source');
- $this->writer->writeAttribute('xmlns', 'http://xml.phpdox.net/token');
- $this->writer->startElement('line');
- $this->writer->writeAttribute('no', 1);
-
- $this->lastLine = 1;
- $tokens = token_get_all($source);
+ while (!\is_array($tokens[$pos - $step])) {
+ $step++;
- foreach($tokens as $pos => $tok) {
- if (is_string($tok)) {
- $line = 1;
- $step = 1;
- while (!is_array($tokens[$pos - $step])) {
- $step++;
- if (($pos - $step) == -1) {
- break;
- }
- }
- if ($pos - $step != -1) {
- $line = $tokens[$pos - $step][2];
- $line += count(preg_split('/\R+/', $tokens[$pos - $step][1])) - 1;
+ if (($pos - $step) == -1) {
+ break;
}
- $token = array(
- 'name' => $this->map[$tok],
- 'value' => $tok,
- 'line' => $line
- );
+ }
+
+ if ($pos - $step != -1) {
+ $line = $tokens[$pos - $step][2];
+ $line += \count(\preg_split('/\R+/', $tokens[$pos - $step][1])) - 1;
+ }
+ $token = [
+ 'name' => $this->map[$tok],
+ 'value' => $tok,
+ 'line' => $line
+ ];
+ $this->addToken($token);
+ } else {
+ $line = $tok[2];
+ $values = \preg_split('/\R+/Uu', $tok[1]);
+
+ foreach ($values as $v) {
+ $token = [
+ 'name' => \token_name($tok[0]),
+ 'value' => $v,
+ 'line' => $line
+ ];
$this->addToken($token);
- } else {
- $line = $tok[2];
- $values = preg_split('/\R+/Uu', $tok[1]);
-
- foreach($values as $v) {
- $token = array(
- 'name' => token_name($tok[0]),
- 'value' => $v,
- 'line' => $line
- );
- $this->addToken($token);
- $line++;
- }
+ $line++;
}
}
+ }
- $this->writer->endElement();
- $this->writer->endElement();
- $this->writer->endDocument();
+ $this->writer->endElement();
+ $this->writer->endElement();
+ $this->writer->endDocument();
+
+ $dom = new fDOMDocument();
+ $dom->preserveWhiteSpace = false;
+ $dom->loadXML($this->writer->outputMemory());
- $dom = new fDOMDocument();
- $dom->preserveWhiteSpace = false;
- $dom->loadXML($this->writer->outputMemory());
- return $dom;
- }
+ return $dom;
+ }
- private function addToken(array $token) {
- if ($this->lastLine < $token['line']) {
- $this->writer->endElement();
+ private function addToken(array $token): void {
+ if ($this->lastLine < $token['line']) {
+ $this->writer->endElement();
- for($t=$this->lastLine + 1; $t<$token['line']; $t++) {
- $this->writer->startElement('line');
- $this->writer->writeAttribute('no', $t);
- $this->writer->endElement();
- }
+ for ($t = $this->lastLine + 1; $t < $token['line']; $t++) {
$this->writer->startElement('line');
- $this->writer->writeAttribute('no', $token['line']);
- $this->lastLine = $token['line'];
- }
-
- if ($token['value'] != '') {
- $this->writer->startElement('token');
- $this->writer->writeAttribute('name', $token['name']);
- $this->writer->writeRaw( htmlspecialchars($token['value'], ENT_NOQUOTES | ENT_DISALLOWED | ENT_XML1) );
+ $this->writer->writeAttribute('no', (string)$t);
$this->writer->endElement();
}
+ $this->writer->startElement('line');
+ $this->writer->writeAttribute('no', (string)$token['line']);
+ $this->lastLine = $token['line'];
}
- }
+ if ($token['value'] != '') {
+ $this->writer->startElement('token');
+ $this->writer->writeAttribute('name', $token['name']);
+ $this->writer->writeRaw(\htmlspecialchars($token['value'], \ENT_NOQUOTES | \ENT_DISALLOWED | \ENT_XML1));
+ $this->writer->endElement();
+ }
+ }
}
diff -Nru phpdox-0.11.2/src/collector/project/TraitObject.php phpdox-0.12.0/src/collector/project/TraitObject.php
--- phpdox-0.11.2/src/collector/project/TraitObject.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/collector/project/TraitObject.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,52 +1,14 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
-namespace TheSeer\phpDox\Collector {
+getRootNode()->queryOne(sprintf('phpdox:users/phpdox:%s[@full = "%s"]', $unit->getType(), $unit->getName())) !== NULL) {
- return;
- }
- $user = $this->addToContainer('users', $unit->getType());
- $this->setName($unit->getName(), $user);
+ public function addUser(AbstractUnitObject $unit): void {
+ if ($this->getRootNode()->queryOne(\sprintf('phpdox:users/phpdox:%s[@full = "%s"]', $unit->getType(), $unit->getName())) !== null) {
+ return;
}
-
+ $user = $this->addToContainer('users', $unit->getType());
+ $this->setName($unit->getName(), $user);
}
-
}
diff -Nru phpdox-0.11.2/src/collector/project/TraitUseException.php phpdox-0.12.0/src/collector/project/TraitUseException.php
--- phpdox-0.11.2/src/collector/project/TraitUseException.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/collector/project/TraitUseException.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,7 +1,6 @@
-ctx = $ctx;
+ }
- /**
- * @var fDOMElement
- *
- */
- private $ctx;
-
- /**
- * @param fDOMElement $ctx
- */
- public function __construct(fDOMElement $ctx) {
- $this->ctx = $ctx;
- }
+ public function export() {
+ return $this->ctx;
+ }
- public function export() {
- return $this->ctx;
- }
+ /**
+ * @param string $name
+ */
+ public function setName($name): void {
+ $parts = \explode('\\', $name);
+ $local = \array_pop($parts);
+ $namespace = \implode('\\', $parts);
+ $this->ctx->setAttribute('full', $name);
+ $this->ctx->setAttribute('namespace', $namespace);
+ $this->ctx->setAttribute('name', $local);
+ }
- /**
- * @param string $name
- */
- public function setName($name) {
- $parts = explode('\\', $name);
- $local = array_pop($parts);
- $namespace = join('\\', $parts);
- $this->ctx->setAttribute('full', $name);
- $this->ctx->setAttribute('namespace', $namespace);
- $this->ctx->setAttribute('name', $local);
- }
+ public function getName() {
+ return $this->ctx->getAttribute('full');
+ }
- public function getName() {
- return $this->ctx->getAttribute('full');
- }
- /**
- * @param int $startLine
- */
- public function setStartLine($startLine) {
- $this->ctx->setAttribute('start', $startLine);
- }
+ /**
+ * @param int $startLine
+ */
+ public function setStartLine($startLine): void {
+ $this->ctx->setAttribute('start', $startLine);
+ }
- /**
- * @param int $endLine
- */
- public function setEndLine($endLine) {
- $this->ctx->setAttribute('end', $endLine);
- }
+ /**
+ * @param int $endLine
+ */
+ public function setEndLine($endLine): void {
+ $this->ctx->setAttribute('end', $endLine);
+ }
+ public function addAlias($originalName, $newName, $newModifier = null): void {
+ $alias = $this->ctx->appendElementNS(self::XMLNS, 'alias');
+ $alias->setAttribute('method', $originalName);
+ $alias->setAttribute('as', $newName);
- public function addAlias($originalName, $newName, $newModifier = NULL) {
- $alias = $this->ctx->appendElementNS(self::XMLNS, 'alias');
- $alias->setAttribute('method', $originalName);
- $alias->setAttribute('as', $newName);
- if ($newModifier !== NULL) {
- $alias->setAttribute('modifier', $newModifier);
- }
+ if ($newModifier !== null) {
+ $alias->setAttribute('modifier', $newModifier);
}
+ }
- public function addExclude($methodName) {
- $exclude = $this->ctx->appendElementNS(self::XMLNS, 'exclude');
- $exclude->setAttribute('method', $methodName);
- }
+ public function addExclude($methodName): void {
+ $exclude = $this->ctx->appendElementNS(self::XMLNS, 'exclude');
+ $exclude->setAttribute('method', $methodName);
+ }
- public function isExcluded($methodName) {
- return $this->ctx->query(
- sprintf('phpdox:exclude[@method = "%s"]', $methodName)
+ public function isExcluded($methodName) {
+ return $this->ctx->query(
+ \sprintf('phpdox:exclude[@method = "%s"]', $methodName)
)->length > 0;
- }
+ }
- public function isAliased($methodName) {
- return $this->ctx->query(
- sprintf('phpdox:alias[@method = "%s"]', $methodName)
+ public function isAliased($methodName) {
+ return $this->ctx->query(
+ \sprintf('phpdox:alias[@method = "%s"]', $methodName)
)->length > 0;
- }
+ }
- public function getAliasedName($methodName) {
- return $this->getAliasNode($methodName)->getAttribute('as');
- }
+ public function getAliasedName($methodName) {
+ return $this->getAliasNode($methodName)->getAttribute('as');
+ }
- public function hasAliasedModifier($methodName) {
- return $this->getAliasNode($methodName)->hasAttribute('modifier');
- }
+ public function hasAliasedModifier($methodName) {
+ return $this->getAliasNode($methodName)->hasAttribute('modifier');
+ }
- public function getAliasedModifier($methodName) {
- return $this->getAliasNode($methodName)->getAttribute('modifier');
- }
+ public function getAliasedModifier($methodName) {
+ return $this->getAliasNode($methodName)->getAttribute('modifier');
+ }
- /**
- * @param $methodName
- *
- * @return mixed
- * @throws TraitUseException
- */
- private function getAliasNode($methodName) {
- $node = $this->ctx->queryOne(
- sprintf('phpdox:alias[@method = "%s"]', $methodName)
+ /**
+ * @param $methodName
+ *
+ * @throws TraitUseException
+ */
+ private function getAliasNode($methodName) {
+ $node = $this->ctx->queryOne(
+ \sprintf('phpdox:alias[@method = "%s"]', $methodName)
+ );
+
+ if (!$node) {
+ throw new TraitUseException(
+ \sprintf('Method %s not aliased', $methodName),
+ TraitUseException::NotAliased
);
- if (!$node) {
- throw new TraitUseException(
- sprintf("Method %s not aliased", $methodName),
- TraitUseException::NotAliased
- );
- }
- return $node;
}
+ return $node;
}
-
}
diff -Nru phpdox-0.11.2/src/collector/project/UnitObjectException.php phpdox-0.12.0/src/collector/project/UnitObjectException.php
--- phpdox-0.11.2/src/collector/project/UnitObjectException.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/collector/project/UnitObjectException.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,46 +1,18 @@
-iterator = $iterator;
- $this->srcDir = $srcDir;
- $this->encoding = $encoding;
- }
-
- /**
- * @return SourceFile
- */
- public function current() {
- return new SourceFile($this->iterator->current()->getPathname(), $this->srcDir, $this->encoding);
- }
-
- /**
- * (PHP 5 >= 5.0.0)
- * Move forward to next element
- *
- * @link http://php.net/manual/en/iterator.next.php
- * @return void Any returned value is ignored.
- */
- public function next() {
- $this->iterator->next();
- }
-
- /**
- * (PHP 5 >= 5.0.0)
- * Return the key of the current element
- *
- * @link http://php.net/manual/en/iterator.key.php
- * @return mixed scalar on success, or null on failure.
- */
- public function key() {
- return $this->iterator->key();
- }
-
- /**
- * (PHP 5 >= 5.0.0)
- * Checks if current position is valid
- *
- * @link http://php.net/manual/en/iterator.valid.php
- * @return boolean The return value will be casted to boolean and then evaluated.
- * Returns true on success or false on failure.
- */
- public function valid() {
- return $this->iterator->valid();
- }
-
- /**
- * (PHP 5 >= 5.0.0)
- * Rewind the Iterator to the first element
- *
- * @link http://php.net/manual/en/iterator.rewind.php
- * @return void Any returned value is ignored.
- */
- public function rewind() {
- $this->iterator->rewind();
- }
+ private $srcDir;
+ private $encoding;
+
+ /**
+ * @param string $encoding
+ */
+ public function __construct(\Iterator $iterator, FileInfo $srcDir, $encoding) {
+ $this->iterator = $iterator;
+ $this->srcDir = $srcDir;
+ $this->encoding = $encoding;
+ }
+
+ public function current(): SourceFile {
+ return new SourceFile($this->iterator->current()->getPathname(), $this->srcDir, $this->encoding);
+ }
+
+ /**
+ * (PHP 5 >= 5.0.0)
+ * Move forward to next element
+ *
+ * @link http://php.net/manual/en/iterator.next.php
+ */
+ public function next(): void {
+ $this->iterator->next();
}
+ /**
+ * (PHP 5 >= 5.0.0)
+ * Return the key of the current element
+ *
+ * @link http://php.net/manual/en/iterator.key.php
+ *
+ * @return mixed scalar on success, or null on failure
+ */
+ public function key() {
+ return $this->iterator->key();
+ }
+
+ /**
+ * (PHP 5 >= 5.0.0)
+ * Checks if current position is valid
+ *
+ * @link http://php.net/manual/en/iterator.valid.php
+ *
+ * @return bool The return value will be casted to boolean and then evaluated.
+ * Returns true on success or false on failure.
+ */
+ public function valid(): bool {
+ return $this->iterator->valid();
+ }
+
+ /**
+ * (PHP 5 >= 5.0.0)
+ * Rewind the Iterator to the first element
+ *
+ * @link http://php.net/manual/en/iterator.rewind.php
+ */
+ public function rewind(): void {
+ $this->iterator->rewind();
+ }
}
diff -Nru phpdox-0.11.2/src/config/BuildConfig.php phpdox-0.12.0/src/config/BuildConfig.php
--- phpdox-0.11.2/src/config/BuildConfig.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/config/BuildConfig.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,99 +1,64 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
* @author Arne Blankerts
* @copyright Arne Blankerts , All rights reserved.
* @license BSD License
- *
*/
+class BuildConfig {
+ protected $ctx;
-namespace TheSeer\phpDox {
+ protected $generator;
- use TheSeer\fDOM\fDOMElement;
+ protected $project;
- /**
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
- class BuildConfig {
-
- protected $ctx;
- protected $generator;
- protected $project;
-
- public function __construct(GeneratorConfig $generator, fDOMElement $ctx) {
- $this->generator = $generator;
- $this->project = $generator->getProjectConfig();
- $this->ctx = $ctx;
- }
+ public function __construct(GeneratorConfig $generator, fDOMElement $ctx) {
+ $this->generator = $generator;
+ $this->project = $generator->getProjectConfig();
+ $this->ctx = $ctx;
+ }
- public function getGeneratorConfig() {
- return $this->generator;
- }
+ public function getGeneratorConfig() {
+ return $this->generator;
+ }
- public function getBuildNode() {
- return $this->ctx;
- }
+ public function getBuildNode() {
+ return $this->ctx;
+ }
- public function getProjectNode() {
- return $this->ctx->parentNode->parentNode;
- }
+ public function getProjectNode() {
+ return $this->ctx->parentNode->parentNode;
+ }
- public function getEngine() {
- return $this->ctx->getAttribute('engine');
- }
+ public function getEngine() {
+ return $this->ctx->getAttribute('engine');
+ }
- public function getWorkDirectory() {
- return $this->project->getWorkDirectory();
- }
+ public function getWorkDirectory() {
+ return $this->project->getWorkDirectory();
+ }
- public function getOutputDirectory() {
- $path = '';
- if ($this->ctx->parentNode->hasAttribute('output')) {
- $path = $this->ctx->parentNode->getAttribute('output', 'docs');
- }
- if ($this->ctx->hasAttribute('output')) {
- if ($path != '') { $path .= '/'; }
- $path .= $this->ctx->getAttribute('output');
- }
- return new FileInfo($path);
+ public function getOutputDirectory() {
+ $path = '';
+
+ if ($this->ctx->parentNode->hasAttribute('output')) {
+ $path = $this->ctx->parentNode->getAttribute('output', 'docs');
}
- public function getSourceDirectory() {
- return $this->project->getSourceDirectory();
+ if ($this->ctx->hasAttribute('output')) {
+ if ($path != '') {
+ $path .= '/';
+ }
+ $path .= $this->ctx->getAttribute('output');
}
+ return new FileInfo($path);
}
+ public function getSourceDirectory() {
+ return $this->project->getSourceDirectory();
+ }
}
diff -Nru phpdox-0.11.2/src/config/CollectorConfig.php phpdox-0.12.0/src/config/CollectorConfig.php
--- phpdox-0.11.2/src/config/CollectorConfig.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/config/CollectorConfig.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,121 +1,79 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-
-namespace TheSeer\phpDox {
-
- use TheSeer\fDOM\fDOMElement;
-
- class CollectorConfig {
-
- protected $ctx;
- protected $project;
-
- public function __construct(ProjectConfig $project, fDOMElement $ctx) {
- $this->project = $project;
- $this->ctx = $ctx;
- }
+project;
- }
+use TheSeer\fDOM\fDOMElement;
- public function getBackend() {
- if ($this->ctx->hasAttribute('backend')) {
- return $this->ctx->getAttribute('backend', 'parser');
- }
- return 'parser';
- }
+class CollectorConfig {
+ protected $ctx;
- /**
- * @return FileInfo
- */
- public function getWorkDirectory() {
- return $this->project->getWorkDirectory();
- }
+ protected $project;
- /**
- * @return FileInfo
- */
- public function getSourceDirectory() {
- return $this->project->getSourceDirectory();
- }
+ public function __construct(ProjectConfig $project, fDOMElement $ctx) {
+ $this->project = $project;
+ $this->ctx = $ctx;
+ }
- /**
- * @return string
- */
- public function getFileEncoding() {
- return $this->ctx->getAttribute('encoding', 'auto');
- }
+ public function getProjectConfig() {
+ return $this->project;
+ }
- public function isPublicOnlyMode() {
- if ($this->ctx->hasAttribute('publiconly')) {
- return $this->ctx->getAttribute('publiconly', 'false') === 'true';
- }
- return $this->project->isPublicOnlyMode();
+ public function getBackend() {
+ if ($this->ctx->hasAttribute('backend')) {
+ return $this->ctx->getAttribute('backend', 'parser');
}
- public function getIncludeMasks() {
- return $this->getMasks('include') ?: '*.php';
- }
+ return 'parser';
+ }
- public function getExcludeMasks() {
- return $this->getMasks('exclude');
- }
+ public function getWorkDirectory(): FileInfo {
+ return $this->project->getWorkDirectory();
+ }
- public function doResolveInheritance() {
- $inNode = $this->ctx->queryOne('cfg:inheritance');
- if (!$inNode) {
- return true;
- }
- return $inNode->getAttribute('resolve', 'true')=='true';
- }
+ public function getSourceDirectory(): FileInfo {
+ return $this->project->getSourceDirectory();
+ }
+
+ public function getFileEncoding(): string {
+ return $this->ctx->getAttribute('encoding', 'auto');
+ }
- public function getInheritanceConfig() {
- return new InheritanceConfig($this, $this->ctx->queryOne('cfg:inheritance'));
+ public function isPublicOnlyMode() {
+ if ($this->ctx->hasAttribute('publiconly')) {
+ return $this->ctx->getAttribute('publiconly', 'false') === 'true';
}
- protected function getMasks($nodename) {
- $list = array();
- foreach($this->ctx->query('cfg:'.$nodename) as $node) {
- $list[] = $node->getAttribute('mask');
- }
- return $list;
+ return $this->project->isPublicOnlyMode();
+ }
+
+ public function getIncludeMasks() {
+ return $this->getMasks('include') ?: '*.php';
+ }
+
+ public function getExcludeMasks() {
+ return $this->getMasks('exclude');
+ }
+
+ public function doResolveInheritance() {
+ $inNode = $this->ctx->queryOne('cfg:inheritance');
+
+ if (!$inNode) {
+ return true;
}
+
+ return $inNode->getAttribute('resolve', 'true') == 'true';
+ }
+
+ public function getInheritanceConfig() {
+ return new InheritanceConfig($this, $this->ctx->queryOne('cfg:inheritance'));
}
+ protected function getMasks($nodename) {
+ $list = [];
+
+ foreach ($this->ctx->query('cfg:' . $nodename) as $node) {
+ $list[] = $node->getAttribute('mask');
+ }
+
+ return $list;
+ }
}
diff -Nru phpdox-0.11.2/src/config/ConfigException.php phpdox-0.12.0/src/config/ConfigException.php
--- phpdox-0.11.2/src/config/ConfigException.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/config/ConfigException.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,15 +1,16 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-
-namespace TheSeer\phpDox {
-
- use TheSeer\fDOM\fDOMDocument;
- use TheSeer\fDOM\fDOMException;
-
- class ConfigLoader {
-
- const XMLNS = 'http://xml.phpdox.net/config';
-
- /**
- * @var FileInfo
- */
- private $homeDir;
-
- /**
- * @var Version
- */
- private $version;
-
- /**
- * @param FileInfo $homeDir
- */
- public function __construct(Version $version, FileInfo $homeDir) {
- $this->version = $version;
- $this->homeDir = $homeDir;
- }
+createInstanceFor($fname);
- }
+use TheSeer\fDOM\fDOMDocument;
+use TheSeer\fDOM\fDOMException;
- /**
- * @return GlobalConfig
- * @throws ConfigLoaderException
- */
- public function autodetect() {
- $candidates = array(
- './phpdox.xml',
- './phpdox.xml.dist'
- );
- foreach($candidates as $fname) {
- if (!file_exists($fname)) {
- continue;
- }
- return $this->createInstanceFor($fname);
- }
- throw new ConfigLoaderException("None of the candidate files found", ConfigLoaderException::NeitherCandidateExists);
- }
+class ConfigLoader {
+ public const XMLNS = 'http://xml.phpdox.net/config';
- /**
- * @param $fname
- *
- * @return GlobalConfig
- * @throws ConfigLoaderException
- */
- private function createInstanceFor($fname) {
- $dom = $this->loadFile($fname);
- $this->ensureCorrectNamespace($dom);
- $this->ensureCorrectRootNodeName($dom);
- return new GlobalConfig($this->version, $this->homeDir, $dom, new FileInfo($fname));
- }
+ /**
+ * @var FileInfo
+ */
+ private $homeDir;
+
+ /**
+ * @var Version
+ */
+ private $version;
+
+ public function __construct(Version $version, FileInfo $homeDir) {
+ $this->version = $version;
+ $this->homeDir = $homeDir;
+ }
- /**
- * @param $fname
- *
- * @return fDOMDocument
- * @throws ConfigLoaderException
- */
- private function loadFile($fname) {
- try {
- $dom = new fDOMDocument();
- $dom->load($fname);
- $dom->registerNamespace('cfg', self::XMLNS);
- return $dom;
- } catch (fDOMException $e) {
- throw new ConfigLoaderException(
- "Parsing config file '$fname' failed.",
- ConfigLoaderException::ParseError,
- $e
- );
- }
+ /**
+ * @param $fname
+ *
+ * @throws ConfigLoaderException
+ */
+ public function load($fname): GlobalConfig {
+ if (!\file_exists($fname)) {
+ throw new ConfigLoaderException("Config file '$fname' not found", ConfigLoaderException::NotFound);
}
- /**
- * @param fDOMDocument $dom
- *
- * @throws ConfigLoaderException
- */
- private function ensureCorrectNamespace(fDOMDocument $dom) {
- if ($dom->documentElement->namespaceURI != self::XMLNS) {
- throw new ConfigLoaderException(
- sprintf(
- "The configuratin file '%s' uses a wrong or outdated xml namespace.\n" .
- "Please ensure it uses 'http://xml.phpdox.net/config'",
- $dom->documentURI
- ), ConfigLoaderException::WrongNamespace
- );
+ return $this->createInstanceFor($fname);
+ }
+
+ /**
+ * @throws ConfigLoaderException
+ */
+ public function autodetect(): GlobalConfig {
+ $candidates = [
+ './phpdox.xml',
+ './phpdox.xml.dist'
+ ];
+
+ foreach ($candidates as $fname) {
+ if (!\file_exists($fname)) {
+ continue;
}
+
+ return $this->createInstanceFor($fname);
}
- /**
- * @param fDOMDocument $dom
- *
- * @throws ConfigLoaderException
- */
- private function ensureCorrectRootNodeName(fDOMDocument $dom) {
- if ($dom->documentElement->localName != 'phpdox') {
- throw new ConfigLoaderException(
- sprintf(
- "The file '%s' does not seem to be a phpdox configration file.",
- $dom->documentURI
- ), ConfigLoaderException::WrongType
- );
- }
+ throw new ConfigLoaderException('None of the candidate files found', ConfigLoaderException::NeitherCandidateExists);
+ }
+
+ /**
+ * @param $fname
+ *
+ * @throws ConfigLoaderException
+ */
+ private function createInstanceFor($fname): GlobalConfig {
+ $dom = $this->loadFile($fname);
+ $this->ensureCorrectNamespace($dom);
+ $this->ensureCorrectRootNodeName($dom);
+
+ return new GlobalConfig($this->version, $this->homeDir, $dom, new FileInfo($fname));
+ }
+
+ /**
+ * @param $fname
+ *
+ * @throws ConfigLoaderException
+ */
+ private function loadFile($fname): fDOMDocument {
+ try {
+ $dom = new fDOMDocument();
+ $dom->load($fname);
+ $dom->registerNamespace('cfg', self::XMLNS);
+
+ return $dom;
+ } catch (fDOMException $e) {
+ throw new ConfigLoaderException(
+ "Parsing config file '$fname' failed.",
+ ConfigLoaderException::ParseError,
+ $e
+ );
}
+ }
+ /**
+ * @throws ConfigLoaderException
+ */
+ private function ensureCorrectNamespace(fDOMDocument $dom): void {
+ if ($dom->documentElement->namespaceURI != self::XMLNS) {
+ throw new ConfigLoaderException(
+ \sprintf(
+ "The configuratin file '%s' uses a wrong or outdated xml namespace.\n" .
+ "Please ensure it uses 'http://xml.phpdox.net/config'",
+ $dom->documentURI
+ ),
+ ConfigLoaderException::WrongNamespace
+ );
+ }
}
+ /**
+ * @throws ConfigLoaderException
+ */
+ private function ensureCorrectRootNodeName(fDOMDocument $dom): void {
+ if ($dom->documentElement->localName != 'phpdox') {
+ throw new ConfigLoaderException(
+ \sprintf(
+ "The file '%s' does not seem to be a phpdox configration file.",
+ $dom->documentURI
+ ),
+ ConfigLoaderException::WrongType
+ );
+ }
+ }
}
diff -Nru phpdox-0.11.2/src/config/ConfigSkeleton.php phpdox-0.12.0/src/config/ConfigSkeleton.php
--- phpdox-0.11.2/src/config/ConfigSkeleton.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/config/ConfigSkeleton.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,45 +1,34 @@
-file = $file;
- }
+ public function __construct(FileInfo $file) {
+ $this->file = $file;
+ }
- /**
- * @return string
- */
- public function render() {
- return file_get_contents($this->file->getPathname());
- }
+ public function render(): string {
+ return \file_get_contents($this->file->getPathname());
+ }
+
+ public function renderStripped(): string {
+ $dom = new fDOMDocument();
+ $dom->preserveWhiteSpace = false;
+ $dom->loadXML(
+ \preg_replace("/\s{2,}/u", ' ', $this->render())
+ );
- /**
- * @return string
- */
- public function renderStripped() {
- $dom = new fDOMDocument();
- $dom->preserveWhiteSpace = FALSE;
- $dom->loadXML(
- preg_replace("/\s{2,}/u", " ", $this->render())
- );
- foreach($dom->query('//comment()') as $c) {
- $c->parentNode->removeChild($c);
- }
- $dom->formatOutput = TRUE;
- return $dom->saveXML();
+ foreach ($dom->query('//comment()') as $c) {
+ $c->parentNode->removeChild($c);
}
+ $dom->formatOutput = true;
+ return $dom->saveXML();
}
-
}
diff -Nru phpdox-0.11.2/src/config/EnrichConfig.php phpdox-0.12.0/src/config/EnrichConfig.php
--- phpdox-0.11.2/src/config/EnrichConfig.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/config/EnrichConfig.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,88 +1,46 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
* @author Arne Blankerts
* @copyright Arne Blankerts , All rights reserved.
* @license BSD License
- *
*/
-
-namespace TheSeer\phpDox {
-
- use TheSeer\fDOM\fDOMElement;
+class EnrichConfig {
+ /**
+ * @var fDOMElement
+ */
+ private $ctx;
/**
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
+ * @var GeneratorConfig
*/
- class EnrichConfig {
+ private $generator;
+
+ public function __construct(GeneratorConfig $generator, fDOMElement $ctx) {
+ $this->generator = $generator;
+ $this->ctx = $ctx;
+ }
+
+ public function getGeneratorConfig() {
+ return $this->generator;
+ }
- /**
- * @var fDOMElement
- */
- private $ctx;
-
- /**
- * @var GeneratorConfig
- */
- private $generator;
-
- public function __construct(GeneratorConfig $generator, fDOMElement $ctx) {
- $this->generator = $generator;
- $this->ctx = $ctx;
- }
-
- public function getGeneratorConfig() {
- return $this->generator;
- }
-
- public function getEnrichNode() {
- return $this->ctx;
- }
-
- public function getProjectNode() {
- return $this->ctx->parentNode->parentNode;
- }
-
- public function getType() {
- return $this->ctx->getAttribute('type');
- }
-
- public function getVersion() {
- return $this->getGeneratorConfig()->getProjectConfig()->getVersion();
- }
+ public function getEnrichNode() {
+ return $this->ctx;
+ }
+ public function getProjectNode() {
+ return $this->ctx->parentNode->parentNode;
}
+ public function getType() {
+ return $this->ctx->getAttribute('type');
+ }
+
+ public function getVersion() {
+ return $this->getGeneratorConfig()->getProjectConfig()->getVersion();
+ }
}
diff -Nru phpdox-0.11.2/src/config/GeneratorConfigException.php phpdox-0.12.0/src/config/GeneratorConfigException.php
--- phpdox-0.11.2/src/config/GeneratorConfigException.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/config/GeneratorConfigException.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,10 +1,6 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-
-namespace TheSeer\phpDox {
-
- use TheSeer\fDOM\fDOMElement;
-
- class GeneratorConfig {
-
- /**
- * @var array
- */
- private $builds;
-
- /**
- * @var array
- */
- private $enrichers;
-
- /**
- * @var fDOMElement
- */
- private $ctx;
-
- /**
- * @var ProjectConfig
- */
- private $project;
-
- public function __construct(ProjectConfig $project, fDOMElement $ctx) {
- $this->project = $project;
- $this->ctx = $ctx;
- }
+project;
- }
+use TheSeer\fDOM\fDOMElement;
+
+class GeneratorConfig {
+ /**
+ * @var array
+ */
+ private $builds;
+
+ /**
+ * @var array
+ */
+ private $enrichers;
+
+ /**
+ * @var fDOMElement
+ */
+ private $ctx;
+
+ /**
+ * @var ProjectConfig
+ */
+ private $project;
+
+ public function __construct(ProjectConfig $project, fDOMElement $ctx) {
+ $this->project = $project;
+ $this->ctx = $ctx;
+ }
+
+ public function getProjectConfig() {
+ return $this->project;
+ }
- public function getActiveBuilds() {
- if (!is_array($this->builds)) {
- $this->builds = array();
- foreach($this->ctx->query('cfg:build[@engine and (not(@enabled) or @enabled="true")]') as $ctx) {
- $this->builds[] = new BuildConfig($this, $ctx);
- }
+ public function getActiveBuilds() {
+ if (!\is_array($this->builds)) {
+ $this->builds = [];
+
+ foreach ($this->ctx->query('cfg:build[@engine and (not(@enabled) or @enabled="true")]') as $ctx) {
+ $this->builds[] = new BuildConfig($this, $ctx);
}
- return $this->builds;
}
- public function getRequiredEngines() {
- $engines = array();
- foreach($this->getActiveBuilds() as $build) {
- $engines[] = $build->getEngine();
- }
- return array_unique($engines);
+ return $this->builds;
+ }
+
+ public function getRequiredEngines() {
+ $engines = [];
+
+ foreach ($this->getActiveBuilds() as $build) {
+ $engines[] = $build->getEngine();
}
- public function getRequiredEnrichers() {
- $enrichers = array();
- foreach($this->getActiveEnrichSources() as $source) {
- $enrichers[] = $source->getType();
- }
- return array_unique($enrichers);
+ return \array_unique($engines);
+ }
+
+ public function getRequiredEnrichers() {
+ $enrichers = [];
+
+ foreach ($this->getActiveEnrichSources() as $source) {
+ $enrichers[] = $source->getType();
}
- public function getActiveEnrichSources() {
- if (!is_array($this->enrichers)) {
- $this->enrichers = array();
- foreach($this->ctx->query('cfg:enrich/cfg:source[@type and (not(@enabled) or @enabled="true")]') as $ctx) {
- $this->enrichers[$ctx->getAttribute('type')] = new EnrichConfig($this, $ctx);
- }
- if (!isset($this->enrichers['build'])) {
- $ctx = $this->ctx->ownerDocument->createElementNS('http://xml.phpdox.net/config', 'source');
- $ctx->setAttribute('type', 'build');
- $this->enrichers['build'] = new EnrichConfig($this, $ctx);
- }
+ return \array_unique($enrichers);
+ }
+
+ public function getActiveEnrichSources() {
+ if (!\is_array($this->enrichers)) {
+ $this->enrichers = [];
+
+ foreach ($this->ctx->query('cfg:enrich/cfg:source[@type and (not(@enabled) or @enabled="true")]') as $ctx) {
+ $this->enrichers[$ctx->getAttribute('type')] = new EnrichConfig($this, $ctx);
+ }
+
+ if (!isset($this->enrichers['build'])) {
+ $ctx = $this->ctx->ownerDocument->createElementNS('http://xml.phpdox.net/config', 'source');
+ $ctx->setAttribute('type', 'build');
+ $this->enrichers['build'] = new EnrichConfig($this, $ctx);
}
- return $this->enrichers;
}
- }
+ return $this->enrichers;
+ }
}
diff -Nru phpdox-0.11.2/src/config/GlobalConfig.php phpdox-0.12.0/src/config/GlobalConfig.php
--- phpdox-0.11.2/src/config/GlobalConfig.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/config/GlobalConfig.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,192 +1,148 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-
-namespace TheSeer\phpDox {
-
- use TheSeer\fDOM\fDOMDocument;
-
- class GlobalConfig {
-
- /**
- * @var Version
- */
- private $version;
-
- /**
- * Directory of phpDox home
- * @var Fileinfo
- */
- private $homeDir;
-
- /**
- * @var fDOMDocument
- */
- private $cfg;
-
- /**
- * File this config is based on
- * @var FileInfo
- */
- private $file;
-
- /**
- * Constructor for global config
- *
- * @param Version $version
- * @param FileInfo $home
- * @param fDOMDocument $cfg A configuration dom
- * @param FileInfo $file FileInfo of the cfg file
- *
- * @throws ConfigException
- */
- public function __construct(Version $version, FileInfo $home, fDOMDocument $cfg, FileInfo $file) {
- if ($cfg->documentElement->nodeName != 'phpdox' ||
- $cfg->documentElement->namespaceURI != 'http://xml.phpdox.net/config') {
- throw new ConfigException("Not a valid phpDox configuration", ConfigException::InvalidDataStructure);
- }
- $this->homeDir = $home;
- $this->version = $version;
- $this->cfg = $cfg;
- $this->file = $file;
- }
-
- /**
- * @return FileInfo
- */
- public function getConfigFile() {
- return $this->file;
- }
-
- /**
- * @return bool
- */
- public function isSilentMode() {
- $root = $this->cfg->queryOne('/cfg:phpdox');
- return $root->getAttribute('silent', 'false') === 'true';
- }
-
- /**
- * @return FileInfoCollection
- */
- public function getCustomBootstrapFiles() {
- $files = new FileInfoCollection();
- foreach($this->cfg->query('//cfg:bootstrap/cfg:require[@file]') as $require) {
- $files->add(new FileInfo($require->getAttribute('file'))) ;
- }
- return $files;
+documentElement->nodeName != 'phpdox' ||
+ $cfg->documentElement->namespaceURI != 'http://xml.phpdox.net/config') {
+ throw new ConfigException('Not a valid phpDox configuration', ConfigException::InvalidDataStructure);
+ }
+ $this->homeDir = $home;
+ $this->version = $version;
+ $this->cfg = $cfg;
+ $this->file = $file;
+ }
+
+ public function getConfigFile(): FileInfo {
+ return $this->file;
+ }
+
+ public function isSilentMode(): bool {
+ $root = $this->cfg->queryOne('/cfg:phpdox');
+
+ return $root->getAttribute('silent', 'false') === 'true';
+ }
+
+ public function getCustomBootstrapFiles(): FileInfoCollection {
+ $files = new FileInfoCollection();
+
+ foreach ($this->cfg->query('//cfg:bootstrap/cfg:require[@file]') as $require) {
+ $files->add(new FileInfo($require->getAttribute('file')));
}
- /**
- * @return array
- */
- public function getProjects() {
- $list = array();
- foreach ($this->cfg->query('//cfg:project[@enabled="true" or not(@enabled)]') as $pos => $project) {
- $list[$project->getAttribute('name', $pos)] = new ProjectConfig($this->version, $this->homeDir, $this->runResolver($project));
- }
- return $list;
+ return $files;
+ }
+
+ public function getProjects(): array {
+ $list = [];
+
+ foreach ($this->cfg->query('//cfg:project[@enabled="true" or not(@enabled)]') as $pos => $project) {
+ $list[$project->getAttribute('name', $pos)] = new ProjectConfig($this->version, $this->homeDir, $this->runResolver($project));
}
- /**
- * @param $ctx
- *
- * @return mixed
- * @throws ConfigException
- */
- private function runResolver($ctx) {
- $vars = array(
- 'basedir' => $ctx->getAttribute('basedir', dirname($this->file->getRealPath())),
-
- 'phpDox.home' => $this->homeDir->getPathname(),
- 'phpDox.file' => $this->file->getPathname(),
- 'phpDox.version' => $this->version->getVersion(),
-
- 'phpDox.project.name' => $ctx->getAttribute('name', 'unnamed'),
- 'phpDox.project.source' => $ctx->getAttribute('source', 'src'),
- 'phpDox.project.workdir' => $ctx->getAttribute('workdir', 'xml'),
-
- 'phpDox.php.version' => PHP_VERSION,
-
- );
- $protected = array_keys($vars);
-
- foreach($ctx->query('cfg:property|/cfg:phpdox/cfg:property') as $property) {
- /** @var $property \DOMElement */
- $name = $property->getAttribute('name');
- $line = $property->getLineNo();
+ return $list;
+ }
- if (in_array($name, $protected)) {
- throw new ConfigException("Cannot overwrite system property in line $line", ConfigException::OverrideNotAllowed);
- }
- if (isset($vars[$name])) {
- throw new ConfigException("Cannot overwrite existing property '$name' in line $line", ConfigException::OverrideNotAllowed);
- }
- $vars[$name] = $this->resolveValue($property->getAttribute('value'), $vars, $line);
- }
+ /**
+ * @param $ctx
+ *
+ * @throws ConfigException
+ */
+ private function runResolver($ctx) {
+ $vars = [
+ 'basedir' => $ctx->getAttribute('basedir', \dirname($this->file->getRealPath())),
+
+ 'phpDox.home' => $this->homeDir->getPathname(),
+ 'phpDox.file' => $this->file->getPathname(),
+ 'phpDox.version' => $this->version->getVersion(),
+
+ 'phpDox.project.name' => $ctx->getAttribute('name', 'unnamed'),
+ 'phpDox.project.source' => $ctx->getAttribute('source', 'src'),
+ 'phpDox.project.workdir' => $ctx->getAttribute('workdir', 'xml'),
+
+ 'phpDox.php.version' => \PHP_VERSION,
+
+ ];
+ $protected = \array_keys($vars);
+
+ foreach ($ctx->query('cfg:property|/cfg:phpdox/cfg:property') as $property) {
+ /** @var $property \DOMElement */
+ $name = $property->getAttribute('name');
+ $line = $property->getLineNo();
- foreach($ctx->query('.//*[not(name()="property")]/@*|@*') as $attr) {
- $attr->nodeValue = $this->resolveValue($attr->nodeValue, $vars, $attr->getLineNo());
+ if (\in_array($name, $protected)) {
+ throw new ConfigException("Cannot overwrite system property in line $line", ConfigException::OverrideNotAllowed);
}
- return $ctx;
+ if (isset($vars[$name])) {
+ throw new ConfigException("Cannot overwrite existing property '$name' in line $line", ConfigException::OverrideNotAllowed);
+ }
+ $vars[$name] = $this->resolveValue($property->getAttribute('value'), $vars, $line);
}
- /**
- * @param string $value
- * @param string[] $vars
- * @param int $line
- *
- * @return string
- */
- private function resolveValue($value, Array $vars, $line) {
- $result = preg_replace_callback('/\${(.*?)}/',
- function($matches) use ($vars, $line) {
- if (!isset($vars[$matches[1]])) {
- throw new ConfigException("No value for property '{$matches[1]}' found in line $line", ConfigException::PropertyNotFound);
- }
- return $vars[$matches[1]];
- }, $value);
- if (preg_match('/\${(.*?)}/', $result)) {
- $result = $this->resolveValue($result, $vars, $line);
- }
- return $result;
+ foreach ($ctx->query('.//*[not(name()="property")]/@*|@*') as $attr) {
+ $attr->nodeValue = $this->resolveValue($attr->nodeValue, $vars, $attr->getLineNo());
}
+ return $ctx;
}
+ /**
+ * @param string $value
+ * @param string[] $vars
+ * @param int $line
+ */
+ private function resolveValue($value, array $vars, $line): string {
+ $result = \preg_replace_callback(
+ '/\${(.*?)}/',
+ function ($matches) use ($vars, $line) {
+ if (!isset($vars[$matches[1]])) {
+ throw new ConfigException("No value for property '{$matches[1]}' found in line $line", ConfigException::PropertyNotFound);
+ }
+
+ return $vars[$matches[1]];
+ },
+ $value
+ );
+
+ if (\preg_match('/\${(.*?)}/', $result)) {
+ $result = $this->resolveValue($result, $vars, $line);
+ }
+
+ return $result;
+ }
}
diff -Nru phpdox-0.11.2/src/config/InheritanceConfig.php phpdox-0.12.0/src/config/InheritanceConfig.php
--- phpdox-0.11.2/src/config/InheritanceConfig.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/config/InheritanceConfig.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,77 +1,37 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-
-namespace TheSeer\phpDox {
-
- use TheSeer\fDOM\fDOMElement;
-
- class InheritanceConfig {
-
- protected $ctx;
- protected $config;
-
- public function __construct(CollectorConfig $config, fDOMElement $ctx = NULL) {
- $this->config = $config;
- $this->ctx = $ctx;
- }
+config->isPublicOnlyMode();
+ public function __construct(CollectorConfig $config, fDOMElement $ctx = null) {
+ $this->config = $config;
+ $this->ctx = $ctx;
+ }
+
+ public function isPublicOnlyMode() {
+ return $this->config->isPublicOnlyMode();
+ }
+
+ public function getDependencyDirectories(): array {
+ $home = $this->config->getProjectConfig()->getHomeDirectory();
+ $default = new FileInfo($home->getPathname() . '/dependencies/php');
+ $list = [$default];
+
+ if (!$this->ctx) {
+ return $list;
}
- /**
- * @return array
- */
- public function getDependencyDirectories() {
- $home = $this->config->getProjectConfig()->getHomeDirectory();
- $default = new FileInfo($home->getPathname() . '/dependencies/php');
- $list = array($default);
- if (!$this->ctx) {
- return $list;
+ foreach ($this->ctx->query('cfg:dependency') as $dep) {
+ if ($dep->hasAttribute('path')) {
+ $list[] = new FileInfo($dep->getAttribute('path'));
}
- foreach($this->ctx->query('cfg:dependency') as $dep) {
- if ($dep->hasAttribute('path')) {
- $list[] = new FileInfo($dep->getAttribute('path'));
- }
- }
- return $list;
}
+ return $list;
}
-
}
diff -Nru phpdox-0.11.2/src/config/ProjectConfig.php phpdox-0.12.0/src/config/ProjectConfig.php
--- phpdox-0.11.2/src/config/ProjectConfig.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/config/ProjectConfig.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,132 +1,78 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-
-namespace TheSeer\phpDox {
-
- use TheSeer\fDOM\fDOMElement;
-
- class ProjectConfig {
-
- /**
- * @var Version
- */
- private $version;
-
- /**
- * @var fDOMElement;
- */
- private $ctx;
-
- /**
- * @var FileInfo
- */
- private $homeDir;
-
- /**
- * Constructor for global config
- *
- * @param fDOMElement $ctx Reference to node
- */
- public function __construct(Version $version, FileInfo $homeDir, fDOMElement $ctx) {
- $this->version = $version;
- $this->homeDir = $homeDir;
- $this->ctx = $ctx;
- }
+version;
- }
+use TheSeer\fDOM\fDOMElement;
- /**
- * @return Fileinfo
- */
- public function getHomeDirectory() {
- return $this->homeDir;
- }
+class ProjectConfig {
+ /**
+ * @var Version
+ */
+ private $version;
+
+ /**
+ * @var fDOMElement;
+ */
+ private $ctx;
+
+ /**
+ * @var FileInfo
+ */
+ private $homeDir;
+
+ /**
+ * Constructor for global config
+ *
+ * @param fDOMElement $ctx Reference to node
+ */
+ public function __construct(Version $version, FileInfo $homeDir, fDOMElement $ctx) {
+ $this->version = $version;
+ $this->homeDir = $homeDir;
+ $this->ctx = $ctx;
+ }
- /**
- * @return FileInfo
- */
- public function getWorkDirectory() {
- return new FileInfo($this->ctx->getAttribute('workdir', 'xml'));
- }
+ public function getVersion(): Version {
+ return $this->version;
+ }
- /**
- * @return FileInfo
- */
- public function getSourceDirectory() {
- return new FileInfo($this->ctx->getAttribute('source', 'src'));
- }
+ public function getHomeDirectory(): Fileinfo {
+ return $this->homeDir;
+ }
- /**
- * @return bool
- */
- public function isPublicOnlyMode() {
- return $this->ctx->getAttribute('publiconly', 'false') === 'true';
- }
+ public function getWorkDirectory(): FileInfo {
+ return new FileInfo($this->ctx->getAttribute('workdir', 'xml'));
+ }
- /**
- * @return CollectorConfig
- * @throws ConfigException
- */
- public function getCollectorConfig() {
- $colNode = $this->ctx->queryOne('cfg:collector');
- if (!$colNode) {
- throw new ConfigException("Project does not have a collector section", ConfigException::NoCollectorSection);
- }
- return new CollectorConfig($this, $colNode);
- }
+ public function getSourceDirectory(): FileInfo {
+ return new FileInfo($this->ctx->getAttribute('source', 'src'));
+ }
+
+ public function isPublicOnlyMode(): bool {
+ return $this->ctx->getAttribute('publiconly', 'false') === 'true';
+ }
+
+ /**
+ * @throws ConfigException
+ */
+ public function getCollectorConfig(): CollectorConfig {
+ $colNode = $this->ctx->queryOne('cfg:collector');
- /**
- * @return GeneratorConfig
- * @throws ConfigException
- */
- public function getGeneratorConfig() {
- $genNode = $this->ctx->queryOne('cfg:generator');
- if (!$genNode) {
- throw new ConfigException("Project does not have a generator section", ConfigException::NoGeneratorSection);
- }
- return new GeneratorConfig($this, $genNode);
+ if (!$colNode) {
+ throw new ConfigException('Project does not have a collector section', ConfigException::NoCollectorSection);
}
+ return new CollectorConfig($this, $colNode);
}
+ /**
+ * @throws ConfigException
+ */
+ public function getGeneratorConfig(): GeneratorConfig {
+ $genNode = $this->ctx->queryOne('cfg:generator');
+
+ if (!$genNode) {
+ throw new ConfigException('Project does not have a generator section', ConfigException::NoGeneratorSection);
+ }
+
+ return new GeneratorConfig($this, $genNode);
+ }
}
diff -Nru phpdox-0.11.2/src/config/skeleton.xml phpdox-0.12.0/src/config/skeleton.xml
--- phpdox-0.11.2/src/config/skeleton.xml 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/config/skeleton.xml 2019-03-13 09:34:17.000000000 +0000
@@ -6,7 +6,7 @@
-
+
@@ -42,8 +42,8 @@
-
-
+
+
@@ -102,8 +102,8 @@
-
-
+
+
-
-
+
+
diff -Nru phpdox-0.11.2/src/docblock/DocBlockException.php phpdox-0.12.0/src/docblock/DocBlockException.php
--- phpdox-0.11.2/src/docblock/DocBlockException.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/docblock/DocBlockException.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,9 +1,6 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
-
-namespace TheSeer\phpDox\DocBlock {
-
- class DocBlock {
-
- protected $elements = array();
-
- public function appendElement(GenericElement $element) {
- $name = $element->getAnnotationName();
- if (isset($this->elements[$name])) {
- if (!is_array($this->elements[$name])) {
- $this->elements[$name] = array($this->elements[$name]);
- }
- $this->elements[$name][] = $element;
- return;
+getAnnotationName();
+
+ if (isset($this->elements[$name])) {
+ if (!\is_array($this->elements[$name])) {
+ $this->elements[$name] = [$this->elements[$name]];
}
- $this->elements[$name] = $element;
- }
+ $this->elements[$name][] = $element;
- public function hasElementByName($name) {
- return isset($this->elements[$name]);
+ return;
}
+ $this->elements[$name] = $element;
+ }
- public function getElementByName($name) {
- if (!isset($this->elements[$name])) {
- throw new DocBlockException("No element with name '$name'", DocBlockException::NotFound);
- }
- return $this->elements[$name];
+ public function hasElementByName($name) {
+ return isset($this->elements[$name]);
+ }
+
+ public function getElementByName($name) {
+ if (!isset($this->elements[$name])) {
+ throw new DocBlockException("No element with name '$name'", DocBlockException::NotFound);
}
- /**
- * @param \TheSeer\fDOM\fDOMDocument $doc
- * @return \TheSeer\fDOM\fDOMElement
- */
- public function asDom(\TheSeer\fDOM\fDOMDocument $doc) {
- $node = $doc->createElementNS('http://xml.phpdox.net/src', 'docblock');
- // add lines and such?
- foreach($this->elements as $element) {
- if (is_array($element)) {
- foreach($element as $el) {
- $node->appendChild($el->asDom($doc));
- }
- continue;
+ return $this->elements[$name];
+ }
+
+ public function asDom(\TheSeer\fDOM\fDOMDocument $doc): \TheSeer\fDOM\fDOMElement {
+ $node = $doc->createElementNS('http://xml.phpdox.net/src', 'docblock');
+ // add lines and such?
+ foreach ($this->elements as $element) {
+ if (\is_array($element)) {
+ foreach ($element as $el) {
+ $node->appendChild($el->asDom($doc));
}
- $node->appendChild($element->asDom($doc));
+
+ continue;
}
- return $node;
+ $node->appendChild($element->asDom($doc));
}
+ return $node;
}
-
}
diff -Nru phpdox-0.11.2/src/docblock/elements/GenericElementException.php phpdox-0.12.0/src/docblock/elements/GenericElementException.php
--- phpdox-0.11.2/src/docblock/elements/GenericElementException.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/docblock/elements/GenericElementException.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,10 +1,8 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
-
-namespace TheSeer\phpDox\DocBlock {
-
- class GenericElement {
-
- protected $factory;
-
- protected $name;
- protected $body;
- protected $attributes = array();
-
- public function __construct(Factory $factory, $name) {
- $this->factory = $factory;
- $this->name = $name;
- }
+name;
- }
+class GenericElement {
+ protected $factory;
- public function getBody() {
- return $this->body;
- }
+ protected $name;
- public function __call($method, $value) {
- if (!preg_match('/^set/', $method)) {
- throw new GenericElementException("Method '$method' not defined", GenericElementException::MethodNotDefined);
- }
- // extract attribute name (remove 'set' or 'get' from string)
- $attribute = mb_strtolower(mb_substr($method, 3));
- $this->attributes[$attribute] = $value[0];
- }
+ protected $body;
- public function setBody($body) {
- $this->body = $body;
- }
+ protected $attributes = [];
- public function asDom(\TheSeer\fDOM\fDOMDocument $ctx) {
- $node = $ctx->createElementNS('http://xml.phpdox.net/src', mb_strtolower($this->name));
- foreach($this->attributes as $attribute => $value) {
- if ($value != '') {
- $node->setAttribute($attribute, $value);
- }
- }
- if ($this->body !== null && $this->body !== '') {
- $parser = $this->factory->getInlineProcessor($ctx);
- $node->appendChild($parser->transformToDom($this->body));
+ public function __construct(Factory $factory, $name) {
+ $this->factory = $factory;
+ $this->name = $name;
+ }
+
+ public function __call($method, $value): void {
+ if (!\preg_match('/^set/', $method)) {
+ throw new GenericElementException("Method '$method' not defined", GenericElementException::MethodNotDefined);
+ }
+ // extract attribute name (remove 'set' or 'get' from string)
+ $attribute = \mb_strtolower(\mb_substr($method, 3));
+ $this->attributes[$attribute] = $value[0];
+ }
+
+ public function getAnnotationName() {
+ return $this->name;
+ }
+
+ public function getBody() {
+ return $this->body;
+ }
+
+ public function setBody($body): void {
+ $this->body = $body;
+ }
+
+ public function asDom(\TheSeer\fDOM\fDOMDocument $ctx) {
+ $node = $ctx->createElementNS('http://xml.phpdox.net/src', \mb_strtolower($this->name));
+
+ foreach ($this->attributes as $attribute => $value) {
+ if ($value != '') {
+ $node->setAttribute($attribute, $value);
}
- return $node;
}
- }
+ if ($this->body !== null && $this->body !== '') {
+ $parser = $this->factory->getInlineProcessor($ctx);
+ $node->appendChild($parser->transformToDom($this->body));
+ }
+ return $node;
+ }
}
diff -Nru phpdox-0.11.2/src/docblock/elements/InheritdocAttribute.php phpdox-0.12.0/src/docblock/elements/InheritdocAttribute.php
--- phpdox-0.11.2/src/docblock/elements/InheritdocAttribute.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/docblock/elements/InheritdocAttribute.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,50 +1,11 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
+createAttribute('inherit');
- $node->appendChild($ctx->createTextNode('true'));
- return $node;
- }
+class InheritdocAttribute extends GenericElement {
+ public function asDom(\TheSeer\fDOM\fDOMDocument $ctx) {
+ $node = $ctx->createAttribute('inherit');
+ $node->appendChild($ctx->createTextNode('true'));
+ return $node;
}
-
}
diff -Nru phpdox-0.11.2/src/docblock/elements/InvalidElement.php phpdox-0.12.0/src/docblock/elements/InvalidElement.php
--- phpdox-0.11.2/src/docblock/elements/InvalidElement.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/docblock/elements/InvalidElement.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,56 +1,19 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
+createElementNS('http://xml.phpdox.net/src', 'invalid');
+ $node->setAttribute('annotation', $this->name);
- class InvalidElement extends GenericElement {
+ foreach ($this->attributes as $attribute => $value) {
+ $node->setAttribute($attribute, $value);
+ }
- public function asDom(\TheSeer\fDOM\fDOMDocument $ctx) {
- $node = $ctx->createElementNS('http://xml.phpdox.net/src', 'invalid');
- $node->setAttribute('annotation', $this->name);
- foreach($this->attributes as $attribute => $value) {
- $node->setAttribute($attribute, $value);
- }
- if ($this->body !== null && $this->body !== '') {
- $node->appendChild($ctx->createTextnode($this->body));
- }
- return $node;
+ if ($this->body !== null && $this->body !== '') {
+ $node->appendChild($ctx->createTextnode($this->body));
}
+ return $node;
}
-
}
diff -Nru phpdox-0.11.2/src/docblock/elements/VarElement.php phpdox-0.12.0/src/docblock/elements/VarElement.php
--- phpdox-0.11.2/src/docblock/elements/VarElement.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/docblock/elements/VarElement.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,82 +1,43 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
-
-namespace TheSeer\phpDox\DocBlock {
-
- class VarElement extends GenericElement {
-
- const XMLNS = 'http://xml.phpdox.net/src';
-
- /**
- * @var string[]
- */
- private $types = array(
- '', 'null', 'mixed', '{unknown}', 'object', 'array', 'integer', 'int',
- 'float', 'string', 'boolean', 'resource'
- );
-
- public function asDom(\TheSeer\fDOM\fDOMDocument $ctx) {
- $node = parent::asDom($ctx);
- $type = $node->getAttribute('type');
-
- if (strpos($type, '[]')) {
- $type = mb_substr($type, 0, -2);
- $node->setAttribute('type', 'array');
- $node->setAttribute('of', $type);
- }
+types)) {
- if (!$node->hasAttribute('of')) {
- $node->setAttribute('type', 'object');
- } else {
- $node->setAttribute('of', 'object');
- }
- $parts = explode('\\', $type);
- $local = array_pop($parts);
- $namespace = join('\\', $parts);
-
- $class = $node->appendElementNS(self::XMLNS, 'type');
- $class->setAttribute('full', $type);
- $class->setAttribute('namespace', $namespace);
- $class->setAttribute('name', $local);
+ /**
+ * @var string[]
+ */
+ private $types = [
+ '', 'null', 'mixed', '{unknown}', 'object', 'array', 'integer', 'int',
+ 'float', 'string', 'boolean', 'resource'
+ ];
+
+ public function asDom(\TheSeer\fDOM\fDOMDocument $ctx) {
+ $node = parent::asDom($ctx);
+ $type = $node->getAttribute('type');
+
+ if (\strpos($type, '[]')) {
+ $type = \mb_substr($type, 0, -2);
+ $node->setAttribute('type', 'array');
+ $node->setAttribute('of', $type);
+ }
+ if (!\in_array($type, $this->types)) {
+ if (!$node->hasAttribute('of')) {
+ $node->setAttribute('type', 'object');
+ } else {
+ $node->setAttribute('of', 'object');
}
- return $node;
+ $parts = \explode('\\', $type);
+ $local = \array_pop($parts);
+ $namespace = \implode('\\', $parts);
+
+ $class = $node->appendElementNS(self::XMLNS, 'type');
+ $class->setAttribute('full', $type);
+ $class->setAttribute('namespace', $namespace);
+ $class->setAttribute('name', $local);
}
- }
+ return $node;
+ }
}
diff -Nru phpdox-0.11.2/src/docblock/FactoryException.php phpdox-0.12.0/src/docblock/FactoryException.php
--- phpdox-0.11.2/src/docblock/FactoryException.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/docblock/FactoryException.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,10 +1,8 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
-namespace TheSeer\phpDox\DocBlock {
-
- use TheSeer\fDOM\fDOMDocument;
- use TheSeer\phpDox\FactoryInterface;
-
- class Factory {
-
- private $parserMap = array(
- 'invalid' => 'TheSeer\\phpDox\\DocBlock\\InvalidParser',
- 'generic' => 'TheSeer\\phpDox\\DocBlock\\GenericParser',
-
- 'description' => 'TheSeer\\phpDox\\DocBlock\\DescriptionParser',
- 'param' => 'TheSeer\\phpDox\\DocBlock\\ParamParser',
- 'var' => 'TheSeer\\phpDox\\DocBlock\\VarParser',
- 'return' => 'TheSeer\\phpDox\\DocBlock\\VarParser',
- 'throws' => 'TheSeer\\phpDox\\DocBlock\\VarParser',
- 'license' => 'TheSeer\\phpDox\\DocBlock\\LicenseParser',
-
- 'internal' => 'TheSeer\\phpDox\\DocBlock\\InternalParser',
- 'inheritdoc' => 'TheSeer\\phpDox\\DocBlock\\InheritdocParser'
- );
-
- private $elementMap = array(
- 'inheritdoc' => 'TheSeer\\phpDox\\DocBlock\\InheritdocAttribute',
- 'invalid' => 'TheSeer\\phpDox\\DocBlock\\InvalidElement',
- 'generic' => 'TheSeer\\phpDox\\DocBlock\\GenericElement',
- 'var' => 'TheSeer\\phpDox\\DocBlock\\VarElement'
- );
-
- /**
- * Register a parser factory.
- *
- * @param string $annotation Identifier of the parser within the registry.
- * @param \TheSeer\phpDox\FactoryInterface|string $factory Instance of FactoryInterface to be registered or FQCN
- * of the object to be created.
- *
- * @throws FactoryException in case $annotation is not a string.
- */
- public function addParserFactory($annotation, $factory) {
- $this->verifyType($annotation);
- $this->parserMap[$annotation] = $factory;
- }
+verifyType($annotation);
- $this->verifyType($classname);
- $this->parserMap[$annotation] = $classname;
- }
+use TheSeer\fDOM\fDOMDocument;
+use TheSeer\phpDox\FactoryInterface;
- public function getDocBlock() {
- return new DocBlock();
- }
+class Factory {
+ private $parserMap = [
+ 'invalid' => 'TheSeer\\phpDox\\DocBlock\\InvalidParser',
+ 'generic' => 'TheSeer\\phpDox\\DocBlock\\GenericParser',
+
+ 'description' => 'TheSeer\\phpDox\\DocBlock\\DescriptionParser',
+ 'param' => 'TheSeer\\phpDox\\DocBlock\\ParamParser',
+ 'var' => 'TheSeer\\phpDox\\DocBlock\\VarParser',
+ 'return' => 'TheSeer\\phpDox\\DocBlock\\VarParser',
+ 'throws' => 'TheSeer\\phpDox\\DocBlock\\VarParser',
+ 'license' => 'TheSeer\\phpDox\\DocBlock\\LicenseParser',
+
+ 'internal' => 'TheSeer\\phpDox\\DocBlock\\InternalParser',
+ 'inheritdoc' => 'TheSeer\\phpDox\\DocBlock\\InheritdocParser'
+ ];
+
+ private $elementMap = [
+ 'inheritdoc' => 'TheSeer\\phpDox\\DocBlock\\InheritdocAttribute',
+ 'invalid' => 'TheSeer\\phpDox\\DocBlock\\InvalidElement',
+ 'generic' => 'TheSeer\\phpDox\\DocBlock\\GenericElement',
+ 'var' => 'TheSeer\\phpDox\\DocBlock\\VarElement'
+ ];
+
+ /**
+ * Register a parser factory.
+ *
+ * @param string $annotation identifier of the parser within the registry
+ * @param string|\TheSeer\phpDox\FactoryInterface $factory instance of FactoryInterface to be registered or FQCN
+ * of the object to be created
+ *
+ * @throws FactoryException in case $annotation is not a string
+ */
+ public function addParserFactory($annotation, $factory): void {
+ $this->verifyType($annotation);
+ $this->parserMap[$annotation] = $factory;
+ }
- public function getInlineProcessor(fDOMDocument $dom) {
- return new InlineProcessor($this, $dom);
- }
+ /**
+ * Register a parser by its classname.
+ *
+ * @param string $annotation identifier of the parser within the registry
+ * @param string $classname name of the class representing the parser
+ */
+ public function addParserClass($annotation, $classname): void {
+ $this->verifyType($annotation);
+ $this->verifyType($classname);
+ $this->parserMap[$annotation] = $classname;
+ }
- public function getElementInstanceFor($name, $annotation = null) {
- return $this->getInstanceByMap($this->elementMap, $name, $annotation);
- }
+ public function getDocBlock() {
+ return new DocBlock();
+ }
- public function getParserInstanceFor($name, $annotation = null) {
- return $this->getInstanceByMap($this->parserMap, $name, $annotation);
- }
+ public function getInlineProcessor(fDOMDocument $dom) {
+ return new InlineProcessor($this, $dom);
+ }
- protected function getInstanceByMap($map, $name, $annotation = null) {
+ public function getElementInstanceFor($name, $annotation = null) {
+ return $this->getInstanceByMap($this->elementMap, $name, $annotation);
+ }
- if ($annotation === null) {
- $annotation = $name;
- }
-
- if (!isset($map[$name])) {
- $name = 'generic';
- }
-
- if ($map[$name] instanceof FactoryInterface) {
- return $map[$name]->getInstanceFor($name, $this, $annotation);
- }
- return new $map[$name]($this, $annotation);
+ public function getParserInstanceFor($name, $annotation = null) {
+ return $this->getInstanceByMap($this->parserMap, $name, $annotation);
+ }
+ protected function getInstanceByMap($map, $name, $annotation = null) {
+ if ($annotation === null) {
+ $annotation = $name;
}
- /**
- * Verify the type of the given item matches the expected one.
- *
- * @param mixed $item
- * @param string $type
- * @throws FactoryException in case the item type and the expected type do not match.
- */
- protected function verifyType($item, $type = 'string') {
- $match = true;
- switch (mb_strtolower($type)) {
- case 'string': {
- if (!is_string($item)) {
+ if (!isset($map[$name])) {
+ $name = 'generic';
+ }
+
+ if ($map[$name] instanceof FactoryInterface) {
+ return $map[$name]->getInstanceFor($name, $this, $annotation);
+ }
+
+ return new $map[$name]($this, $annotation);
+ }
+
+ /**
+ * Verify the type of the given item matches the expected one.
+ *
+ * @param string $type
+ *
+ * @throws FactoryException in case the item type and the expected type do not match
+ */
+ protected function verifyType($item, $type = 'string'): void {
+ $match = true;
+
+ switch (\mb_strtolower($type)) {
+ case 'string':
+ {
+ if (!\is_string($item)) {
$match = false;
}
+
break;
}
- default: {
+ default:
+ {
throw new FactoryException('Unknown type chosen for verification', FactoryException::UnknownType);
+
break;
}
- }
-
- if (!$match) {
- throw new FactoryException('Argument must be a string.', FactoryException::InvalidType);
- }
}
+ if (!$match) {
+ throw new FactoryException('Argument must be a string.', FactoryException::InvalidType);
+ }
}
-
}
diff -Nru phpdox-0.11.2/src/docblock/InlineProcessor.php phpdox-0.12.0/src/docblock/InlineProcessor.php
--- phpdox-0.11.2/src/docblock/InlineProcessor.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/docblock/InlineProcessor.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,110 +1,78 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * You can also {@internal let's {@do something}} about it.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
-
-namespace TheSeer\phpDox\DocBlock {
-
- class InlineProcessor {
-
- protected $dom;
- protected $factory;
-
- protected $regex = '/(.*?)\{(\@(?>[^{}]+|(?R))*)\}|(.*)/m';
-
- public function __construct(Factory $factory, \TheSeer\fDOM\fDOMDocument $ctx) {
- $this->factory = $factory;
- $this->dom = $ctx;
- }
-
- public function transformToDom($text) {
- return $this->doParse($text);
- }
-
- protected function doParse($text) {
- $count = preg_match_all($this->regex, $text, $matches);
- if (join('', $matches[1]) == '') {
- return $this->dom->createTextNode($text);
- }
- $fragment = $this->dom->createDocumentFragment();
- for($x=0; $x<$count; $x++) {
- for($t=1; $t<=3; $t++) {
- if ($matches[$t][$x] == '') {
- continue;
- }
- if ($t==2) {
- $fragment->appendChild($this->processMatch($matches[$t][$x]));
- continue;
- }
- $part = $matches[$t][$x];
- if ($t==3 && $part != '') {
- $part .= "\n";
- }
- $fragment->appendChild($this->dom->createTextNode($part));
- }
- }
- return $fragment;
+[^{}]+|(?R))*)\}|(.*)/m';
+
+ public function __construct(Factory $factory, \TheSeer\fDOM\fDOMDocument $ctx) {
+ $this->factory = $factory;
+ $this->dom = $ctx;
+ }
+
+ public function transformToDom($text) {
+ return $this->doParse($text);
+ }
+
+ protected function doParse($text) {
+ $count = \preg_match_all($this->regex, $text, $matches);
+
+ if (\implode('', $matches[1]) == '') {
+ return $this->dom->createTextNode($text);
}
+ $fragment = $this->dom->createDocumentFragment();
- protected function processMatch($match) {
- if ($match === '@') {
- return $this->dom->createTextNode('{');
- }
- $parts = preg_split("/[\s,]+/", $match, 2, PREG_SPLIT_NO_EMPTY);
- $annotation = mb_substr($parts[0], 1);
- if (preg_match('=^[a-zA-Z0-9]*$=', $annotation)) {
- $parser = $this->factory->getParserInstanceFor($annotation);
- } else {
- $parser = $this->factory->getParserInstanceFor('invalid', $annotation);
- }
- if (isset($parts[1])) {
- $parser->setPayload($parts[1]);
- }
+ for ($x = 0; $x < $count; $x++) {
+ for ($t = 1; $t <= 3; $t++) {
+ if ($matches[$t][$x] == '') {
+ continue;
+ }
- $node = $parser->getObject(array())->asDom($this->dom);
- foreach($node->childNodes as $child) {
- if ($child instanceof \DOMText) {
- $node->replaceChild($this->doParse($child->wholeText), $child);
+ if ($t == 2) {
+ $fragment->appendChild($this->processMatch($matches[$t][$x]));
+
+ continue;
}
- }
- return $node;
+ $part = $matches[$t][$x];
+ if ($t == 3 && $part != '') {
+ $part .= "\n";
+ }
+ $fragment->appendChild($this->dom->createTextNode($part));
+ }
}
+ return $fragment;
}
+ protected function processMatch($match) {
+ if ($match === '@') {
+ return $this->dom->createTextNode('{');
+ }
+ $parts = \preg_split("/[\s,]+/", $match, 2, \PREG_SPLIT_NO_EMPTY);
+ $annotation = \mb_substr($parts[0], 1);
+
+ if (\preg_match('=^[a-zA-Z0-9]*$=', $annotation)) {
+ $parser = $this->factory->getParserInstanceFor($annotation);
+ } else {
+ $parser = $this->factory->getParserInstanceFor('invalid', $annotation);
+ }
+
+ if (isset($parts[1])) {
+ $parser->setPayload($parts[1]);
+ }
+
+ $node = $parser->getObject([])->asDom($this->dom);
+
+ foreach ($node->childNodes as $child) {
+ if ($child instanceof \DOMText) {
+ $node->replaceChild($this->doParse($child->wholeText), $child);
+ }
+ }
+
+ return $node;
+ }
}
diff -Nru phpdox-0.11.2/src/docblock/parser/DescriptionParser.php phpdox-0.12.0/src/docblock/parser/DescriptionParser.php
--- phpdox-0.11.2/src/docblock/parser/DescriptionParser.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/docblock/parser/DescriptionParser.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,57 +1,19 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
+buildObject('generic', $buffer);
- $obj->setCompact(trim($compact, " *\t"));
- return $obj;
+ if (\count($buffer)) {
+ do {
+ $line = \array_shift($buffer);
+ $compact .= ' ' . $line;
+ } while ($line != '' && \mb_substr($line, -1) != '.');
}
+ $obj = $this->buildObject('generic', $buffer);
+ $obj->setCompact(\trim($compact, " *\t"));
+ return $obj;
}
-
}
diff -Nru phpdox-0.11.2/src/docblock/parser/GenericParser.php phpdox-0.12.0/src/docblock/parser/GenericParser.php
--- phpdox-0.11.2/src/docblock/parser/GenericParser.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/docblock/parser/GenericParser.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,111 +1,77 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
-
-namespace TheSeer\phpDox\DocBlock {
-
- class GenericParser {
-
- protected $factory;
- protected $aliasMap;
- protected $name;
- protected $payload;
-
- private $types = array(
- '', 'null', 'mixed', '{unknown}', 'object', 'array', 'integer', 'int',
- 'float', 'string', 'boolean', 'resource'
- );
-
- public function __construct(Factory $factory, $name) {
- $this->factory = $factory;
- $this->name = $name;
- }
-
- public function setAliasMap(array $map) {
- $this->aliasMap = $map;
- }
-
- public function setPayload($payload) {
- $this->payload = trim($payload);
- }
-
- public function getObject(array $buffer) {
- $this->payload .= ' ' . implode(' ', array_map('trim', $buffer));
- $obj = $this->buildObject('generic', []);
- $obj->setValue(trim($this->payload));
- return $obj;
- }
-
- protected function buildObject($classname, array $buffer) {
- $obj = $this->factory->getElementInstanceFor($classname, $this->name);
- if (count($buffer)) {
- $obj->setBody(trim(join("\n", $buffer)));
- }
- return $obj;
- }
-
- protected function lookupType($type) {
- if ($type === 'self' || $type === 'static') {
- return $this->aliasMap['::unit'];
- }
-
- // Do not mess with scalar and fixed types
- if (in_array($type, $this->types)) {
- return $type;
- }
-
- // absolute definition?
- if ($type[0] == '\\') {
- return $type;
- }
-
- // alias?
- if (isset($this->aliasMap[$type])) {
- return $this->aliasMap[$type];
- }
-
- // relative to local namespace?
- if (isset($this->aliasMap['::context'])) {
- return $this->aliasMap['::context'] . '\\' . $type;
- }
+factory = $factory;
+ $this->name = $name;
+ }
+
+ public function setAliasMap(array $map): void {
+ $this->aliasMap = $map;
+ }
+
+ public function setPayload($payload): void {
+ $this->payload = \trim($payload);
+ }
+
+ public function getObject(array $buffer) {
+ $this->payload .= ' ' . \implode(' ', \array_map('trim', $buffer));
+ $obj = $this->buildObject('generic', []);
+ $obj->setValue(\trim($this->payload));
+
+ return $obj;
+ }
+
+ protected function buildObject($classname, array $buffer) {
+ $obj = $this->factory->getElementInstanceFor($classname, $this->name);
+
+ if (\count($buffer)) {
+ $obj->setBody(\trim(\implode("\n", $buffer)));
}
+ return $obj;
}
+ protected function lookupType($type) {
+ if ($type === 'self' || $type === 'static') {
+ return $this->aliasMap['::unit'];
+ }
+
+ // Do not mess with scalar and fixed types
+ if (\in_array($type, $this->types)) {
+ return $type;
+ }
+
+ // absolute definition?
+ if ($type[0] == '\\') {
+ return $type;
+ }
+
+ // alias?
+ if (isset($this->aliasMap[$type])) {
+ return $this->aliasMap[$type];
+ }
+
+ // relative to local namespace?
+ if (isset($this->aliasMap['::context'])) {
+ return $this->aliasMap['::context'] . '\\' . $type;
+ }
+
+ // don't know any better ..
+ return $type;
+ }
}
diff -Nru phpdox-0.11.2/src/docblock/parser/InheritdocParser.php phpdox-0.12.0/src/docblock/parser/InheritdocParser.php
--- phpdox-0.11.2/src/docblock/parser/InheritdocParser.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/docblock/parser/InheritdocParser.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,48 +1,8 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
-
-namespace TheSeer\phpDox\DocBlock {
-
- class InheritdocParser extends GenericParser {
-
- public function getObject(array $buffer) {
- return $this->buildObject('inheritdoc', $buffer);
- }
-
- }
+buildObject('inheritdoc', $buffer);
+ }
}
diff -Nru phpdox-0.11.2/src/docblock/parser/InternalParser.php phpdox-0.12.0/src/docblock/parser/InternalParser.php
--- phpdox-0.11.2/src/docblock/parser/InternalParser.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/docblock/parser/InternalParser.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,50 +1,11 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
+buildObject('generic', $buffer);
- $obj->setBody($this->payload);
- return $obj;
- }
-
- }
+class InternalParser extends GenericParser {
+ public function getObject(array $buffer) {
+ $obj = $this->buildObject('generic', $buffer);
+ $obj->setBody($this->payload);
+ return $obj;
+ }
}
diff -Nru phpdox-0.11.2/src/docblock/parser/InvalidParser.php phpdox-0.12.0/src/docblock/parser/InvalidParser.php
--- phpdox-0.11.2/src/docblock/parser/InvalidParser.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/docblock/parser/InvalidParser.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,50 +1,11 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
+buildObject('invalid', $buffer);
- $obj->setValue($this->payload);
- return $obj;
- }
+class InvalidParser extends GenericParser {
+ public function getObject(array $buffer) {
+ $obj = $this->buildObject('invalid', $buffer);
+ $obj->setValue($this->payload);
+ return $obj;
}
-
}
diff -Nru phpdox-0.11.2/src/docblock/parser/LicenseParser.php phpdox-0.12.0/src/docblock/parser/LicenseParser.php
--- phpdox-0.11.2/src/docblock/parser/LicenseParser.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/docblock/parser/LicenseParser.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,50 +1,11 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
+buildObject('generic', $buffer);
- $obj->setName($this->payload);
- return $obj;
- }
-
- }
+class LicenseParser extends GenericParser {
+ public function getObject(array $buffer) {
+ $obj = $this->buildObject('generic', $buffer);
+ $obj->setName($this->payload);
+ return $obj;
+ }
}
diff -Nru phpdox-0.11.2/src/docblock/parser/LinkParser.php phpdox-0.12.0/src/docblock/parser/LinkParser.php
--- phpdox-0.11.2/src/docblock/parser/LinkParser.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/docblock/parser/LinkParser.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,54 +1,15 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
+buildObject('link', $buffer);
+ $parts = \preg_split("/[\s,]+/", $this->payload, 2, \PREG_SPLIT_NO_EMPTY);
- class LinkParser extends GenericParser {
-
- public function getObject(array $buffer) {
- $obj = $this->buildObject('link', $buffer);
- $parts = preg_split("/[\s,]+/", $this->payload, 2, PREG_SPLIT_NO_EMPTY);
- if (count($parts) == 1) {
-
- }
- $obj->setValue($this->payload);
- return $obj;
+ if (\count($parts) == 1) {
}
+ $obj->setValue($this->payload);
+ return $obj;
}
-
}
diff -Nru phpdox-0.11.2/src/docblock/parser/ParamParser.php phpdox-0.12.0/src/docblock/parser/ParamParser.php
--- phpdox-0.11.2/src/docblock/parser/ParamParser.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/docblock/parser/ParamParser.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,82 +1,49 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
-
-namespace TheSeer\phpDox\DocBlock {
-
- class ParamParser extends GenericParser {
-
- public function getObject(array $buffer) {
- $obj = $this->buildObject('var', $buffer);
-
- $param = preg_split("/[\s,]+/", $this->payload, 3, PREG_SPLIT_NO_EMPTY);
- switch(count($param)) {
- case 3: {
- if ($param[0][0]=='$' || $param[1][0]=='$') {
+buildObject('var', $buffer);
+
+ $param = \preg_split("/[\s,]+/", $this->payload, 3, \PREG_SPLIT_NO_EMPTY);
+
+ switch (\count($param)) {
+ case 3:
+ {
+ if ($param[0][0] == '$' || $param[1][0] == '$') {
$obj->setDescription($param[2]);
- // no break!
+ // no break!
} else {
$obj->setDescription($param[1] . ' ' . $param[2]);
$obj->setType($this->lookupType($param[0]));
+
break;
}
}
- case 2: {
- if ($param[0][0]=='$') {
+ case 2:
+ {
+ if ($param[0][0] == '$') {
$obj->setVariable($param[0]);
$obj->setType($this->lookupType($param[1]));
} else {
$obj->setType($this->lookupType($param[0]));
$obj->setVariable($param[1]);
}
+
break;
}
- case 1: {
- if ($param[0][0]=='$') {
+ case 1:
+ {
+ if ($param[0][0] == '$') {
$obj->setVariable($param[0]);
} else {
$obj->setType($this->lookupType($param[0]));
}
+
break;
}
- }
-
- return $obj;
}
+ return $obj;
}
-
}
diff -Nru phpdox-0.11.2/src/docblock/parser/VarParser.php phpdox-0.12.0/src/docblock/parser/VarParser.php
--- phpdox-0.11.2/src/docblock/parser/VarParser.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/docblock/parser/VarParser.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,58 +1,23 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
+buildObject('var', $buffer);
- class VarParser extends GenericParser {
+ if ($this->payload != '') {
+ $parts = \preg_split("/[\s,]+/", $this->payload, 2, \PREG_SPLIT_NO_EMPTY);
- public function getObject(array $buffer) {
- $obj = $this->buildObject('var', $buffer);
- if ($this->payload != '') {
- $parts = preg_split("/[\s,]+/", $this->payload, 2, PREG_SPLIT_NO_EMPTY);
- if (isset($parts[1])) {
- $obj->setDescription($parts[1]);
- }
- if (in_array($parts[0], array('self', 'static'))) {
- $obj->setResolution($parts[0]);
- }
- $obj->setType($this->lookupType($parts[0]));
+ if (isset($parts[1])) {
+ $obj->setDescription($parts[1]);
}
- return $obj;
+
+ if (\in_array($parts[0], ['self', 'static'])) {
+ $obj->setResolution($parts[0]);
+ }
+ $obj->setType($this->lookupType($parts[0]));
}
- }
+ return $obj;
+ }
}
diff -Nru phpdox-0.11.2/src/docblock/Parser.php phpdox-0.12.0/src/docblock/Parser.php
--- phpdox-0.11.2/src/docblock/Parser.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/docblock/Parser.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,119 +1,91 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
-namespace TheSeer\phpDox\DocBlock {
-
- class Parser {
-
- protected $factory;
- protected $current = null;
- protected $aliasMap = array();
-
- public function __construct(Factory $factory) {
- $this->factory = $factory;
- }
-
- public function parse($block, array $aliasMap) {
- $this->aliasMap = $aliasMap;
- $this->current = null;
-
- $docBlock = $this->factory->getDocBlock();
- $lines = $this->prepare($block);
- if (count($lines)>1) {
- $this->startParser('description');
- }
- $buffer = array();
- foreach($lines as $line) {
- if ($line == '' || $line == '/') {
- if (count($buffer)) {
- $buffer[] = '';
- }
- continue;
- }
+factory = $factory;
+ }
- if ($line[0]=='@') {
- if ($this->current !== null) {
- $docBlock->appendElement(
- $this->current->getObject($buffer)
- );
- }
- $buffer = array();
-
- preg_match('/^\@([a-zA-Z0-9_]+)(.*)$/', $line, $lineParts);
- $name = ( isset( $lineParts[1] ) ? $lineParts[1] : '(undefined)');
- $payload = ( isset( $lineParts[2] ) ? trim($lineParts[2]) : '' );
+ public function parse($block, array $aliasMap) {
+ $this->aliasMap = $aliasMap;
+ $this->current = null;
- $this->startParser($name, $payload);
- continue;
+ $docBlock = $this->factory->getDocBlock();
+ $lines = $this->prepare((string)$block);
+
+ if (\count($lines) > 1) {
+ $this->startParser('description');
+ }
+ $buffer = [];
+
+ foreach ($lines as $line) {
+ if ($line == '' || $line == '/') {
+ if (\count($buffer)) {
+ $buffer[] = '';
}
- $buffer[] = $line;
+
+ continue;
}
- if (!$this->current) {
- // A Single line docblock with no @ annotation is considered a description
- $this->startParser('description');
+
+ if ($line[0] == '@') {
+ if ($this->current !== null) {
+ $docBlock->appendElement(
+ $this->current->getObject($buffer)
+ );
+ }
+ $buffer = [];
+
+ \preg_match('/^\@([a-zA-Z0-9_]+)(.*)$/', $line, $lineParts);
+ $name = ($lineParts[1] ?? '(undefined)');
+ $payload = (isset($lineParts[2]) ? \trim($lineParts[2]) : '');
+
+ $this->startParser($name, $payload);
+
+ continue;
}
- $docBlock->appendElement(
- $this->current->getObject($buffer)
- );
- return $docBlock;
+ $buffer[] = $line;
}
- protected function prepare($block) {
- $block = str_replace(array("\r\n", "\r"), "\n", mb_substr($block, 3, -2));
- $raw = array();
- foreach(explode("\n", $block) as $line) {
- $line = preg_replace('/^\s*\*? ?/', '', $line);
- $raw[] = rtrim($line, " \n\t*");
- }
- return $raw;
+ if (!$this->current) {
+ // A Single line docblock with no @ annotation is considered a description
+ $this->startParser('description');
}
+ $docBlock->appendElement(
+ $this->current->getObject($buffer)
+ );
- protected function startParser($name, $payload = NULL) {
- if (!preg_match('/^[a-zA-Z0-9-_\.]*$/', $name) || empty($name)) {
- // TODO: errorlog
- $this->current = $this->factory->getParserInstanceFor('invalid', $name);
- } else {
- $this->current = $this->factory->getParserInstanceFor($name);
- }
- $this->current->setAliasMap($this->aliasMap);
- if ($payload !== NULL) {
- $this->current->setPayload($payload);
- }
+ return $docBlock;
+ }
+
+ protected function prepare($block) {
+ $block = \str_replace(["\r\n", "\r"], "\n", \mb_substr($block, 3, -2));
+ $raw = [];
+
+ foreach (\explode("\n", $block) as $line) {
+ $line = \preg_replace('/^\s*\*? ?/', '', $line);
+ $raw[] = \rtrim($line, " \n\t*");
}
+ return $raw;
}
+ protected function startParser($name, $payload = null): void {
+ if (!\preg_match('/^[a-zA-Z0-9-_\.]*$/', $name) || empty($name)) {
+ // TODO: errorlog
+ $this->current = $this->factory->getParserInstanceFor('invalid', $name);
+ } else {
+ $this->current = $this->factory->getParserInstanceFor($name);
+ }
+ $this->current->setAliasMap($this->aliasMap);
+
+ if ($payload !== null) {
+ $this->current->setPayload($payload);
+ }
+ }
}
diff -Nru phpdox-0.11.2/src/generator/AbstractEvent.php phpdox-0.12.0/src/generator/AbstractEvent.php
--- phpdox-0.11.2/src/generator/AbstractEvent.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/AbstractEvent.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,52 +1,13 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
+ * Class AbstractEvent
*/
-namespace TheSeer\phpDox\Generator {
-
- /**
- * Class AbstractEvent
- */
- abstract class AbstractEvent {
-
- public function getType() {
- return $this->getEventName();
- }
-
- abstract protected function getEventName();
+abstract class AbstractEvent {
+ public function getType() {
+ return $this->getEventName();
}
+ abstract protected function getEventName();
}
diff -Nru phpdox-0.11.2/src/generator/engine/AbstractEngine.php phpdox-0.12.0/src/generator/engine/AbstractEngine.php
--- phpdox-0.11.2/src/generator/engine/AbstractEngine.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/engine/AbstractEngine.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,126 +1,96 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
-
-namespace TheSeer\phpDox\Generator\Engine {
-
- use TheSeer\fDOM\fDOMDocument;
- use TheSeer\fXSL\fXSLTProcessor;
- use TheSeer\phpDox\DirectoryCleaner;
- use TheSeer\phpDox\FileInfo;
-
- abstract class AbstractEngine implements EngineInterface {
-
- protected function getXSLTProcessor($template) {
- $tpl = new fDomDocument();
- $tpl->load($template);
- if (stripos(PHP_OS, 'Linux') !== 0) {
- $this->resolveImports($tpl);
- }
- return new fXSLTProcessor($tpl);
+load($template);
+
+ if (\stripos(\PHP_OS, 'Linux') !== 0) {
+ $this->resolveImports($tpl);
}
- protected function clearDirectory($path) {
- $cleaner = new DirectoryCleaner();
- $cleaner->process(new FileInfo($path));
+ return new fXSLTProcessor($tpl);
+ }
+
+ protected function clearDirectory($path): void {
+ $cleaner = new DirectoryCleaner();
+ $cleaner->process(new FileInfo((string)$path));
+ }
+
+ protected function saveDomDocument(\DOMDocument $dom, $filename, $format = true) {
+ $path = \dirname($filename);
+ \clearstatcache();
+
+ if (!\file_exists($path)) {
+ \mkdir($path, 0777, true);
}
+ $dom->formatOutput = $format;
- protected function saveDomDocument(\DOMDocument $dom, $filename, $format = true) {
- $path = dirname($filename);
- clearstatcache();
- if (!file_exists($path)) {
- mkdir($path, 0777, true);
- }
- $dom->formatOutput = $format;
- return $dom->save($filename);
+ return $dom->save($filename);
+ }
+
+ protected function saveFile($content, $filename) {
+ $path = \dirname($filename);
+ \clearstatcache();
+
+ if (!\file_exists($path)) {
+ \mkdir($path, 0777, true);
}
- protected function saveFile($content, $filename) {
- $path = dirname($filename);
- clearstatcache();
- if (!file_exists($path)) {
- mkdir($path, 0777, true);
- }
- return file_put_contents($filename, $content);
+ return \file_put_contents($filename, $content);
+ }
+
+ protected function copyStatic($path, $dest, $recursive = true): void {
+ $len = \mb_strlen($path);
+
+ if ($recursive) {
+ $worker = new \RecursiveIteratorIterator(new \RecursiveDirectoryIterator($path));
+ } else {
+ $worker = new \DirectoryIterator($path);
}
- protected function copyStatic($path, $dest, $recursive = true) {
- $len = mb_strlen($path);
- if ($recursive) {
- $worker = new \RecursiveIteratorIterator(new \RecursiveDirectoryIterator($path));
- } else {
- $worker = new \DirectoryIterator($path);
+ foreach ($worker as $x) {
+ if ($x->isDir() && ($x->getFilename() == '.' || $x->getFilename() == '..')) {
+ continue;
}
- foreach($worker as $x) {
- if($x->isDir() && ($x->getFilename() == "." || $x->getFilename() == "..")) {
- continue;
- }
- $target = $dest . mb_substr($x->getPathname(), $len);
- if (!file_exists(dirname($target))) {
- mkdir(dirname($target), 0777, true);
- }
- copy($x->getPathname(), $target);
+ $target = $dest . \mb_substr($x->getPathname(), $len);
+
+ if (!\file_exists(\dirname($target))) {
+ \mkdir(\dirname($target), 0777, true);
}
+ \copy($x->getPathname(), $target);
}
+ }
- private function resolveImports(fDOMDocument $doc) {
- $doc->registerNamespace('xsl', 'http://www.w3.org/1999/XSL/Transform');
- $baseDir = dirname($doc->documentURI);
- $baseElement = $doc->documentElement;
- foreach($doc->query('/xsl:stylesheet/xsl:import') as $importNode) {
- /** @var $importNode \DOMElement */
- $import = new fDOMDocument();
- $import->load($baseDir . '/' . $importNode->getAttribute('href'));
-
- $newParent = $importNode->parentNode;
- foreach ($import->documentElement->childNodes as $child) {
- if ($child->localName === 'output') {
- continue;
- }
- $importedChild = $doc->importNode($child, true);
- $newParent->insertBefore($importedChild, $importNode);
+ private function resolveImports(fDOMDocument $doc): void {
+ $doc->registerNamespace('xsl', 'http://www.w3.org/1999/XSL/Transform');
+ $baseDir = \dirname($doc->documentURI);
+
+ foreach ($doc->query('/xsl:stylesheet/xsl:import') as $importNode) {
+ /** @var $importNode \DOMElement */
+ $import = new fDOMDocument();
+ $import->load($baseDir . '/' . $importNode->getAttribute('href'));
+
+ $newParent = $importNode->parentNode;
+
+ foreach ($import->documentElement->childNodes as $child) {
+ if ($child->localName === 'output') {
+ continue;
}
- $newParent->removeChild($importNode);
+ $importedChild = $doc->importNode($child, true);
+ $newParent->insertBefore($importedChild, $importNode);
}
+ $newParent->removeChild($importNode);
}
-
- }
-
- class EngineException extends \Exception {
- const UnexpectedError = 1;
}
+}
+class EngineException extends \Exception {
+ public const UnexpectedError = 1;
}
diff -Nru phpdox-0.11.2/src/generator/engine/EngineInterface.php phpdox-0.12.0/src/generator/engine/EngineInterface.php
--- phpdox-0.11.2/src/generator/engine/EngineInterface.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/engine/EngineInterface.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,45 +1,6 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox\Generator\Engine {
+ [],
+ 'phpdox.end' => [],
+
+ 'phpdox.namespaces.start' => [],
+ 'phpdox.namespaces.end' => [],
+
+ 'phpdox.classes.start' => [],
+ 'phpdox.classes.end' => [],
+ 'phpdox.traits.start' => [],
+ 'phpdox.traits.end' => [],
+ 'phpdox.interfaces.start' => [],
+ 'phpdox.interfaces.end' => [],
+
+ 'namespace.start' => [],
+ 'namespace.classes.start' => [],
+ 'namespace.classes.end' => [],
+ 'namespace.traits.start' => [],
+ 'namespace.traits.end' => [],
+ 'namespace.interfaces.start' => [],
+ 'namespace.interfaces.end' => [],
+ 'namespace.end' => [],
+
+ 'class.start' => [],
+ 'class.constant' => [],
+ 'class.member' => [],
+ 'class.method' => [],
+ 'class.end' => [],
+
+ 'trait.start' => [],
+ 'trait.constant' => [],
+ 'trait.member' => [],
+ 'trait.method' => [],
+ 'trait.end' => [],
+
+ 'interface.start' => [],
+ 'interface.constant' => [],
+ 'interface.method' => [],
+ 'interface.end' => [],
+
+ 'token.file.start' => [],
+ 'token.line.start' => [],
+ 'token.token' => [],
+ 'token.line.end' => [],
+ 'token.file.end' => []
+ ];
+
+ public function addHandler($eventType, $instance, $method): void {
+ if (!\method_exists($instance, $method)) {
+ throw new EventHandlerRegistryException("Handler '$method' not defined", EventHandlerRegistryException::MethodNotDefined);
+ }
- private $events = array(
- 'phpdox.start' => array(),
- 'phpdox.end' => array(),
-
- 'phpdox.namespaces.start' => array(),
- 'phpdox.namespaces.end' => array(),
-
- 'phpdox.classes.start' => array(),
- 'phpdox.classes.end' => array(),
- 'phpdox.traits.start' => array(),
- 'phpdox.traits.end' => array(),
- 'phpdox.interfaces.start' => array(),
- 'phpdox.interfaces.end' => array(),
-
- 'namespace.start' => array(),
- 'namespace.classes.start' => array(),
- 'namespace.classes.end' => array(),
- 'namespace.traits.start' => array(),
- 'namespace.traits.end' => array(),
- 'namespace.interfaces.start' => array(),
- 'namespace.interfaces.end' => array(),
- 'namespace.end' => array(),
-
- 'class.start' => array(),
- 'class.constant' => array(),
- 'class.member' => array(),
- 'class.method' => array(),
- 'class.end' => array(),
-
- 'trait.start' => array(),
- 'trait.constant' => array(),
- 'trait.member' => array(),
- 'trait.method' => array(),
- 'trait.end' => array(),
-
- 'interface.start' => array(),
- 'interface.constant' => array(),
- 'interface.method' => array(),
- 'interface.end' => array(),
-
- 'token.file.start' => array(),
- 'token.line.start' => array(),
- 'token.token' => array(),
- 'token.line.end' => array(),
- 'token.file.end' => array()
- );
-
- public function addHandler($eventType, $instance, $method) {
- if (!method_exists($instance, $method)) {
- throw new EventHandlerRegistryException("Handler '$method' not defined", EventHandlerRegistryException::MethodNotDefined);
- }
- if (!isset($this->events[$eventType])) {
- throw new EventHandlerRegistryException("Event '$eventType' is not defined", EventHandlerRegistryException::EventNotDefined);
- }
- $key = spl_object_hash($instance) . '::' . $method;
- if (isset($this->events[$eventType][$key])) {
- throw new EventHandlerRegistryException("Handler already registered for this event", EventHandlerRegistryException::AlreadyRegistered);
- }
- $this->events[$eventType][$key] = array($instance, $method);
+ if (!isset($this->events[$eventType])) {
+ throw new EventHandlerRegistryException("Event '$eventType' is not defined", EventHandlerRegistryException::EventNotDefined);
}
+ $key = \spl_object_hash($instance) . '::' . $method;
- public function getHandlersForEvent($eventType) {
- if (!isset($this->events[$eventType])) {
- throw new EventHandlerRegistryException("Event '$eventType' is not defined", EventHandlerRegistryException::EventNotDefined);
- }
- return array_values($this->events[$eventType]);
+ if (isset($this->events[$eventType][$key])) {
+ throw new EventHandlerRegistryException('Handler already registered for this event', EventHandlerRegistryException::AlreadyRegistered);
}
+ $this->events[$eventType][$key] = [$instance, $method];
}
- class EventHandlerRegistryException extends \Exception {
+ public function getHandlersForEvent($eventType) {
+ if (!isset($this->events[$eventType])) {
+ throw new EventHandlerRegistryException("Event '$eventType' is not defined", EventHandlerRegistryException::EventNotDefined);
+ }
- const MethodNotDefined = 1;
- const EventNotDefined = 2;
- const AlreadyRegistered = 4;
+ return \array_values($this->events[$eventType]);
}
+}
+
+class EventHandlerRegistryException extends \Exception {
+ public const MethodNotDefined = 1;
+
+ public const EventNotDefined = 2;
+ public const AlreadyRegistered = 4;
}
diff -Nru phpdox-0.11.2/src/generator/engine/Factory.php phpdox-0.12.0/src/generator/engine/Factory.php
--- phpdox-0.11.2/src/generator/engine/Factory.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/engine/Factory.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,87 +1,51 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox\Generator\Engine {
-
- use TheSeer\phpDox\BuildConfig;
- use TheSeer\phpDox\FactoryInterface;
+engines[$name] = $class;
- }
+ protected $configs = [];
- public function addEngineFactory($name, FactoryInterface $factory) {
- $this->engines[$name] = $factory;
- }
+ public function addEngineClass($name, $class): void {
+ $this->engines[$name] = $class;
+ }
+
+ public function addEngineFactory($name, FactoryInterface $factory): void {
+ $this->engines[$name] = $factory;
+ }
+
+ public function getEngineList() {
+ return \array_keys($this->engines);
+ }
+
+ public function setConfigClass($name, $class): void {
+ $this->configs[$name] = $class;
+ }
- public function getEngineList() {
- return array_keys($this->engines);
+ public function getInstanceFor(BuildConfig $buildCfg) {
+ $name = $buildCfg->getEngine();
+
+ if (!isset($this->engines[$name])) {
+ throw new FactoryException("Engine '$name' is not registered.", FactoryException::UnknownEngine);
}
- public function setConfigClass($name, $class) {
- $this->configs[$name] = $class;
+ if (isset($this->configs[$name])) {
+ $cfg = new $this->configs[$name]($buildCfg->getGeneratorConfig(), $buildCfg->getBuildNode());
+ } else {
+ $cfg = $buildCfg;
}
- public function getInstanceFor(BuildConfig $buildCfg) {
- $name = $buildCfg->getEngine();
- if (!isset($this->engines[$name])) {
- throw new FactoryException("Engine '$name' is not registered.", FactoryException::UnknownEngine);
- }
-
- if (isset($this->configs[$name])) {
- $cfg = new $this->configs[$name]($buildCfg->getGeneratorConfig(), $buildCfg->getBuildNode());
- } else {
- $cfg = $buildCfg;
- }
-
- if ($this->engines[$name] instanceof FactoryInterface) {
- return $this->engines[$name]->getInstanceFor($name, $cfg);
- }
- return new $this->engines[$name]($cfg);
+ if ($this->engines[$name] instanceof FactoryInterface) {
+ return $this->engines[$name]->getInstanceFor($name, $cfg);
}
+ return new $this->engines[$name]($cfg);
}
+}
- class FactoryException extends \Exception {
- const UnknownEngine = 1;
- }
+class FactoryException extends \Exception {
+ public const UnknownEngine = 1;
}
diff -Nru phpdox-0.11.2/src/generator/engine/html/HtmlConfig.php phpdox-0.12.0/src/generator/engine/html/HtmlConfig.php
--- phpdox-0.11.2/src/generator/engine/html/HtmlConfig.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/engine/html/HtmlConfig.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,68 +1,37 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
-namespace TheSeer\phpDox\Generator\Engine {
-
- class HtmlConfig extends \TheSeer\phpDox\BuildConfig {
-
- public function getTemplateDirectory() {
- $default = $this->getGeneratorConfig()->getProjectConfig()->getHomeDirectory()->getPathname();
- $default .= '/templates/html';
- $node = $this->ctx->queryOne('cfg:template');
- if (!$node) {
- return $default;
- }
- if ($node->hasAttribute('path')) {
- return $node->getAttribute('path', $default);
- }
- return $node->getAttribute('dir', $default);
+getGeneratorConfig()->getProjectConfig()->getHomeDirectory()->getPathname();
+ $default .= '/templates/html';
+ $node = $this->ctx->queryOne('cfg:template');
+
+ if (!$node) {
+ return $default;
}
- public function getResourceDirectory() {
- $default = $this->getTemplateDirectory() . '/static';
- $node = $this->ctx->queryOne('cfg:resource');
- if (!$node) {
- return $default;
- }
+ if ($node->hasAttribute('path')) {
return $node->getAttribute('path', $default);
}
- public function getFileExtension() {
- $res = $this->ctx->queryOne('cfg:file/@extension');
- return $res === NULL ? 'xhtml' : $res->nodeValue;
+ return $node->getAttribute('dir', $default);
+ }
+
+ public function getResourceDirectory() {
+ $default = $this->getTemplateDirectory() . '/static';
+ $node = $this->ctx->queryOne('cfg:resource');
+
+ if (!$node) {
+ return $default;
}
+
+ return $node->getAttribute('path', $default);
+ }
+
+ public function getFileExtension() {
+ $res = $this->ctx->queryOne('cfg:file/@extension');
+
+ return $res === null ? 'xhtml' : $res->nodeValue;
}
}
diff -Nru phpdox-0.11.2/src/generator/engine/html/Html.php phpdox-0.12.0/src/generator/engine/html/Html.php
--- phpdox-0.11.2/src/generator/engine/html/Html.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/engine/html/Html.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,291 +1,267 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
-
-namespace TheSeer\phpDox\Generator\Engine {
-
- use TheSeer\fDom\fDomDocument;
- use TheSeer\fXSL\fXSLTProcessor;
-
- use TheSeer\phpDox\FileInfo;
- use TheSeer\phpDox\Generator\AbstractEvent;
- use TheSeer\phpDox\Generator\ClassMethodEvent;
- use TheSeer\phpDox\Generator\ClassStartEvent;
- use TheSeer\phpDox\Generator\InterfaceMethodEvent;
- use TheSeer\phpDox\Generator\InterfaceStartEvent;
- use TheSeer\phpDox\Generator\PHPDoxEndEvent;
- use TheSeer\phpDox\Generator\PHPDoxStartEvent;
- use TheSeer\phpDox\Generator\TokenFileStartEvent;
- use TheSeer\phpDox\Generator\TraitMethodEvent;
- use TheSeer\phpDox\Generator\TraitStartEvent;
-
- class Html extends AbstractEngine {
-
- /**
- * @var fXSLTProcessor
- */
- private $xslClass;
-
- /**
- * @var fXSLTProcessor
- */
- private $xslInterface;
-
- /**
- * @var fXSLTProcessor
- */
- private $xslMethod;
-
- /**
- * @var fXSLTProcessor
- */
- private $xslSource;
-
- private $templateDir;
- private $resourceDir;
- private $outputDir;
- private $projectNode;
- private $extension;
- private $workDir;
- private $sourceDir;
-
- private $hasNamespaces = false;
- private $hasInterfaces = false;
- private $hasTraits = false;
- private $hasClasses = false;
- private $hasReports;
-
- public function __construct(HtmlConfig $config) {
- $this->templateDir = $config->getTemplateDirectory();
- $this->resourceDir = $config->getResourceDirectory();
- $this->outputDir = $config->getOutputDirectory();
- $this->projectNode = $config->getProjectNode();
- $this->extension = $config->getFileExtension();
- $this->workDir = $config->getWorkDirectory();
- $this->sourceDir = $config->getSourceDirectory();
- $this->hasReports = false; // $config->getReports()->count() ?
- }
+addHandler('phpdox.start', $this, 'buildStart');
- $registry->addHandler('class.start', $this, 'buildClass');
- $registry->addHandler('trait.start', $this, 'buildTrait');
- $registry->addHandler('interface.start', $this, 'buildInterface');
- $registry->addHandler('class.method', $this, 'buildClassMethod');
- $registry->addHandler('trait.method', $this, 'buildTraitMethod');
- $registry->addHandler('interface.method', $this, 'buildInterfaceMethod');
- $registry->addHandler('token.file.start', $this, 'buildSource');
- $registry->addHandler('phpdox.end', $this, 'buildFinish');
- }
+use TheSeer\fDom\fDomDocument;
+use TheSeer\fXSL\fXSLTProcessor;
+use TheSeer\phpDox\Generator\ClassMethodEvent;
+use TheSeer\phpDox\Generator\ClassStartEvent;
+use TheSeer\phpDox\Generator\InterfaceMethodEvent;
+use TheSeer\phpDox\Generator\InterfaceStartEvent;
+use TheSeer\phpDox\Generator\PHPDoxEndEvent;
+use TheSeer\phpDox\Generator\PHPDoxStartEvent;
+use TheSeer\phpDox\Generator\TokenFileStartEvent;
+use TheSeer\phpDox\Generator\TraitMethodEvent;
+use TheSeer\phpDox\Generator\TraitStartEvent;
- protected function getXSLTProcessor($template) {
- $xsl = parent::getXSLTProcessor($this->templateDir . '/' . $template);
- $xsl->setParameter('', 'extension', $this->extension);
- $xsl->setParameter('', 'xml', $this->workDir->asFileUri() . '/');
-
- $xsl->setParameter('', 'hasNamespaces', $this->hasNamespaces ? 'Y' : 'N');
- $xsl->setParameter('', 'hasInterfaces', $this->hasInterfaces ? 'Y' : 'N');
- $xsl->setParameter('', 'hasTraits', $this->hasTraits ? 'Y' : 'N');
- $xsl->setParameter('', 'hasClasses', $this->hasClasses ? 'Y' : 'N');
- $xsl->setParameter('', 'hasReports', $this->hasReports ? 'Y' : 'N');
+class Html extends AbstractEngine {
+ /**
+ * @var fXSLTProcessor
+ */
+ private $xslClass;
- if ($this->projectNode->hasAttribute('name')) {
- $xsl->setParameter('', 'project', $this->projectNode->getAttribute('name'));
- }
+ /**
+ * @var fXSLTProcessor
+ */
+ private $xslInterface;
- return $xsl;
- }
+ /**
+ * @var fXSLTProcessor
+ */
+ private $xslMethod;
- public function buildStart(PHPDoxStartEvent $event) {
- $this->clearDirectory($this->outputDir);
+ /**
+ * @var fXSLTProcessor
+ */
+ private $xslSource;
- $index = $event->getIndex();
- $this->hasNamespaces = $index->hasNamespaces();
- $this->hasInterfaces = $index->hasInterfaces();
- $this->hasTraits = $index->hasTraits();
- $this->hasClasses = $index->hasClasses();
+ private $templateDir;
- $this->xslClass = $this->getXSLTProcessor('class.xsl');
- $this->xslClass->setParameter('', 'base', '../');
+ private $resourceDir;
- $this->xslInterface = $this->getXSLTProcessor('interface.xsl');
- $this->xslInterface->setParameter('', 'base', '../');
+ private $outputDir;
- $this->xslMethod = $this->getXSLTProcessor('method.xsl');
- $this->xslMethod->setParameter('', 'base', '../../');
+ private $projectNode;
- $this->xslSource = $this->getXSLTProcessor('source.xsl');
- }
+ private $extension;
- private function renderIndexPages(fDOMDocument $indexDom) {
- $proc = $this->getXSLTProcessor('index.xsl');
- $proc->setParameter('', 'project', $this->projectNode->getAttribute('name'));
- $html = $proc->transformToDoc($indexDom);
- $this->saveDomDocument($html, $this->outputDir . '/index.' . $this->extension);
-
- $proc = $this->getXSLTProcessor('namespaces.xsl');
- $html = $proc->transformToDoc($indexDom);
- $this->saveDomDocument($html, $this->outputDir . '/namespaces.' . $this->extension);
-
- $proc = $this->getXSLTProcessor('units.xsl');
- $html = $proc->transformToDoc($indexDom);
- $this->saveDomDocument($html, $this->outputDir . '/classes.' . $this->extension);
-
- $proc->setParameter('', 'mode', 'interface');
- $proc->setParameter('', 'title', 'Interfaces');
- $html = $proc->transformToDoc($indexDom);
- $this->saveDomDocument($html, $this->outputDir . '/interfaces.' . $this->extension);
-
- $proc->setParameter('', 'mode', 'trait');
- $proc->setParameter('', 'title', 'Traits');
- $html = $proc->transformToDoc($indexDom);
- $this->saveDomDocument($html, $this->outputDir . '/traits.' . $this->extension);
- }
+ private $workDir;
- private function renderSourceIndexes(fDOMDocument $treeDom) {
- $proc = $this->getXSLTProcessor('directory.xsl');
- $dirList = $treeDom->query('/phpdox:source//phpdox:dir');
- foreach($dirList as $dirNode) {
- $dirNode->setAttributeNS('ctx://engine/html', 'ctx:engine', 'current');
-
- $parents = $dirNode->query('ancestor-or-self::phpdox:dir');
- $elements = array();
- foreach($parents as $parent) {
- $elements[] = $parent->getAttribute('name');
- }
- $elements[0] = $this->outputDir . '/source';
- $elements[] = 'index.' . $this->extension;
+ private $sourceDir;
- $proc->setParameter('', 'base', str_repeat('../', count($elements) - 1));
- $this->saveDomDocument( $proc->transformToDoc($treeDom), join('/', $elements));
+ private $hasNamespaces = false;
- $dirNode->removeAttributeNS('ctx://engine/html', 'engine');
- }
- }
+ private $hasInterfaces = false;
- public function buildFinish(PHPDoxEndEvent $event) {
- $this->renderIndexPages($event->getIndex()->asDom());
- $this->renderSourceIndexes($event->getTree()->asDom());
- $this->copyStatic($this->resourceDir, $this->outputDir, TRUE);
- }
+ private $hasTraits = false;
- public function buildClass(ClassStartEvent $event) {
- $this->xslClass->setParameter('', 'type', 'classes');
- $this->xslClass->setParameter('', 'title', 'Classes');
- $html = $this->xslClass->transformToDoc($event->getClass()->asDom());
- $this->saveDomDocument($html, $this->outputDir . '/classes/' .
- $this->classNameToFileName($event->getClass()->getFullName())
- );
- }
+ private $hasClasses = false;
- public function buildTrait(TraitStartEvent $event) {
- $this->xslClass->setParameter('', 'type', 'traits');
- $this->xslClass->setParameter('', 'title', 'Traits');
- $html = $this->xslClass->transformToDoc($event->getTrait()->asDom());
- $this->saveDomDocument($html, $this->outputDir . '/traits/' .
- $this->classNameToFileName($event->getTrait()->getFullName())
- );
- }
+ private $hasReports;
- public function buildInterface(InterfaceStartEvent $event) {
- $html = $this->xslInterface->transformToDoc($event->getInterface()->asDom());
- $this->saveDomDocument($html, $this->outputDir . '/interfaces/' .
- $this->classNameToFileName($event->getInterface()->getFullName())
- );
- }
+ public function __construct(HtmlConfig $config) {
+ $this->templateDir = $config->getTemplateDirectory();
+ $this->resourceDir = $config->getResourceDirectory();
+ $this->outputDir = $config->getOutputDirectory();
+ $this->projectNode = $config->getProjectNode();
+ $this->extension = $config->getFileExtension();
+ $this->workDir = $config->getWorkDirectory();
+ $this->sourceDir = $config->getSourceDirectory();
+ $this->hasReports = false; // $config->getReports()->count() ?
+ }
- public function buildClassMethod(ClassMethodEvent $event) {
- $this->genericMethodBuild(
- $event->getClass()->asDom(),
- 'classes',
- $event->getClass()->getFullName(),
- $event->getMethod()->getName()
- );
- }
+ public function registerEventHandlers(EventHandlerRegistry $registry): void {
+ $registry->addHandler('phpdox.start', $this, 'buildStart');
+ $registry->addHandler('class.start', $this, 'buildClass');
+ $registry->addHandler('trait.start', $this, 'buildTrait');
+ $registry->addHandler('interface.start', $this, 'buildInterface');
+ $registry->addHandler('class.method', $this, 'buildClassMethod');
+ $registry->addHandler('trait.method', $this, 'buildTraitMethod');
+ $registry->addHandler('interface.method', $this, 'buildInterfaceMethod');
+ $registry->addHandler('token.file.start', $this, 'buildSource');
+ $registry->addHandler('phpdox.end', $this, 'buildFinish');
+ }
- public function buildTraitMethod(TraitMethodEvent $event) {
- $this->genericMethodBuild(
- $event->getTrait()->asDom(),
- 'traits',
- $event->getTrait()->getFullName(),
- $event->getMethod()->getName()
- );
- }
+ public function buildStart(PHPDoxStartEvent $event): void {
+ $this->clearDirectory($this->outputDir);
- public function buildInterfaceMethod(InterfaceMethodEvent $event) {
- $this->genericMethodBuild(
- $event->getInterface()->asDom(),
- 'interfaces',
- $event->getInterface()->getFullName(),
- $event->getMethod()->getName()
- );
- }
+ $index = $event->getIndex();
+ $this->hasNamespaces = $index->hasNamespaces();
+ $this->hasInterfaces = $index->hasInterfaces();
+ $this->hasTraits = $index->hasTraits();
+ $this->hasClasses = $index->hasClasses();
- public function buildSource(TokenFileStartEvent $event) {
- $path = $event->getTokenFile()->getRelativeName($this->sourceDir);
- $base = str_repeat('../', count(explode('/', $path)));
- $this->xslSource->setParameter('', 'base', $base);
-
- $html = $this->xslSource->transformToDoc($event->getTokenFile()->asDom());
- $this->saveDomDocument(
- $html,
- $this->outputDir . '/source/' . $path . '.' . $this->extension,
- FALSE
- );
+ $this->xslClass = $this->getXSLTProcessor('class.xsl');
+ $this->xslClass->setParameter('', 'base', '../');
- }
+ $this->xslInterface = $this->getXSLTProcessor('interface.xsl');
+ $this->xslInterface->setParameter('', 'base', '../');
+
+ $this->xslMethod = $this->getXSLTProcessor('method.xsl');
+ $this->xslMethod->setParameter('', 'base', '../../');
+
+ $this->xslSource = $this->getXSLTProcessor('source.xsl');
+ }
+
+ public function buildFinish(PHPDoxEndEvent $event): void {
+ $this->renderIndexPages($event->getIndex()->asDom());
+ $this->renderSourceIndexes($event->getTree()->asDom());
+ $this->copyStatic($this->resourceDir, $this->outputDir, true);
+ }
+
+ public function buildClass(ClassStartEvent $event): void {
+ $this->xslClass->setParameter('', 'type', 'classes');
+ $this->xslClass->setParameter('', 'title', 'Classes');
+ $html = $this->xslClass->transformToDoc($event->getClass()->asDom());
+ $this->saveDomDocument(
+ $html,
+ $this->outputDir . '/classes/' .
+ $this->classNameToFileName($event->getClass()->getFullName())
+ );
+ }
+
+ public function buildTrait(TraitStartEvent $event): void {
+ $this->xslClass->setParameter('', 'type', 'traits');
+ $this->xslClass->setParameter('', 'title', 'Traits');
+ $html = $this->xslClass->transformToDoc($event->getTrait()->asDom());
+ $this->saveDomDocument(
+ $html,
+ $this->outputDir . '/traits/' .
+ $this->classNameToFileName($event->getTrait()->getFullName())
+ );
+ }
+
+ public function buildInterface(InterfaceStartEvent $event): void {
+ $html = $this->xslInterface->transformToDoc($event->getInterface()->asDom());
+ $this->saveDomDocument(
+ $html,
+ $this->outputDir . '/interfaces/' .
+ $this->classNameToFileName($event->getInterface()->getFullName())
+ );
+ }
- private function genericMethodBuild(fDOMDocument $ctx, $target, $unitName, $method) {
- $this->xslMethod->setParameter('', 'methodName', $method);
- $html = $this->xslMethod->transformToDoc($ctx);
+ public function buildClassMethod(ClassMethodEvent $event): void {
+ $this->genericMethodBuild(
+ $event->getClass()->asDom(),
+ 'classes',
+ $event->getClass()->getFullName(),
+ $event->getMethod()->getName()
+ );
+ }
- $filename = $this->outputDir . '/' . $target . '/' .
- $this->classNameToFileName($unitName, $method);
+ public function buildTraitMethod(TraitMethodEvent $event): void {
+ $this->genericMethodBuild(
+ $event->getTrait()->asDom(),
+ 'traits',
+ $event->getTrait()->getFullName(),
+ $event->getMethod()->getName()
+ );
+ }
+
+ public function buildInterfaceMethod(InterfaceMethodEvent $event): void {
+ $this->genericMethodBuild(
+ $event->getInterface()->asDom(),
+ 'interfaces',
+ $event->getInterface()->getFullName(),
+ $event->getMethod()->getName()
+ );
+ }
- $this->saveDomDocument($html, $filename);
+ public function buildSource(TokenFileStartEvent $event): void {
+ $path = $event->getTokenFile()->getRelativeName($this->sourceDir);
+ $base = \str_repeat('../', \count(\explode('/', $path->getPathname())));
+ $this->xslSource->setParameter('', 'base', $base);
+
+ $html = $this->xslSource->transformToDoc($event->getTokenFile()->asDom());
+ $this->saveDomDocument(
+ $html,
+ $this->outputDir . '/source/' . $path . '.' . $this->extension,
+ false
+ );
+ }
+
+ protected function getXSLTProcessor($template) {
+ $xsl = parent::getXSLTProcessor($this->templateDir . '/' . $template);
+ $xsl->setParameter('', 'extension', $this->extension);
+ $xsl->setParameter('', 'xml', $this->workDir->asFileUri() . '/');
+
+ $xsl->setParameter('', 'hasNamespaces', $this->hasNamespaces ? 'Y' : 'N');
+ $xsl->setParameter('', 'hasInterfaces', $this->hasInterfaces ? 'Y' : 'N');
+ $xsl->setParameter('', 'hasTraits', $this->hasTraits ? 'Y' : 'N');
+ $xsl->setParameter('', 'hasClasses', $this->hasClasses ? 'Y' : 'N');
+ $xsl->setParameter('', 'hasReports', $this->hasReports ? 'Y' : 'N');
+
+ if ($this->projectNode->hasAttribute('name')) {
+ $xsl->setParameter('', 'project', $this->projectNode->getAttribute('name'));
}
- private function classNameToFileName($class, $method = NULL) {
- $name = str_replace('\\', '_', $class);
- if ($method !== NULL) {
- $name .= '/' . $method;
+ return $xsl;
+ }
+
+ private function renderIndexPages(fDOMDocument $indexDom): void {
+ $proc = $this->getXSLTProcessor('index.xsl');
+ $proc->setParameter('', 'project', $this->projectNode->getAttribute('name'));
+ $html = $proc->transformToDoc($indexDom);
+ $this->saveDomDocument($html, $this->outputDir . '/index.' . $this->extension);
+
+ $proc = $this->getXSLTProcessor('namespaces.xsl');
+ $html = $proc->transformToDoc($indexDom);
+ $this->saveDomDocument($html, $this->outputDir . '/namespaces.' . $this->extension);
+
+ $proc = $this->getXSLTProcessor('units.xsl');
+ $html = $proc->transformToDoc($indexDom);
+ $this->saveDomDocument($html, $this->outputDir . '/classes.' . $this->extension);
+
+ $proc->setParameter('', 'mode', 'interface');
+ $proc->setParameter('', 'title', 'Interfaces');
+ $html = $proc->transformToDoc($indexDom);
+ $this->saveDomDocument($html, $this->outputDir . '/interfaces.' . $this->extension);
+
+ $proc->setParameter('', 'mode', 'trait');
+ $proc->setParameter('', 'title', 'Traits');
+ $html = $proc->transformToDoc($indexDom);
+ $this->saveDomDocument($html, $this->outputDir . '/traits.' . $this->extension);
+ }
+
+ private function renderSourceIndexes(fDOMDocument $treeDom): void {
+ $proc = $this->getXSLTProcessor('directory.xsl');
+ $dirList = $treeDom->query('/phpdox:source//phpdox:dir');
+
+ foreach ($dirList as $dirNode) {
+ $dirNode->setAttributeNS('ctx://engine/html', 'ctx:engine', 'current');
+
+ $parents = $dirNode->query('ancestor-or-self::phpdox:dir');
+ $elements = [];
+
+ foreach ($parents as $parent) {
+ $elements[] = $parent->getAttribute('name');
}
- return $name . '.' . $this->extension;
+ $elements[0] = $this->outputDir . '/source';
+ $elements[] = 'index.' . $this->extension;
+
+ $proc->setParameter('', 'base', \str_repeat('../', \count($elements) - 1));
+ $this->saveDomDocument($proc->transformToDoc($treeDom), \implode('/', $elements));
+
+ $dirNode->removeAttributeNS('ctx://engine/html', 'engine');
}
+ }
+ private function genericMethodBuild(fDOMDocument $ctx, $target, $unitName, $method): void {
+ $this->xslMethod->setParameter('', 'methodName', $method);
+ $html = $this->xslMethod->transformToDoc($ctx);
+
+ $filename = $this->outputDir . '/' . $target . '/' .
+ $this->classNameToFileName($unitName, $method);
+
+ $this->saveDomDocument($html, $filename);
}
+ private function classNameToFileName($class, $method = null) {
+ $name = \str_replace('\\', '_', $class);
+
+ if ($method !== null) {
+ $name .= '/' . $method;
+ }
+
+ return $name . '.' . $this->extension;
+ }
}
diff -Nru phpdox-0.11.2/src/generator/engine/xml/Xml.php phpdox-0.12.0/src/generator/engine/xml/Xml.php
--- phpdox-0.11.2/src/generator/engine/xml/Xml.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/engine/xml/Xml.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,104 +1,70 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
-
-namespace TheSeer\phpDox\Generator\Engine {
-
- use TheSeer\phpDox\BuildConfig;
- use TheSeer\phpDox\Generator\AbstractEvent;
- use TheSeer\phpDox\Generator\ClassStartEvent;
- use TheSeer\phpDox\Generator\InterfaceStartEvent;
- use TheSeer\phpDox\Generator\PHPDoxEndEvent;
- use TheSeer\phpDox\Generator\TokenFileStartEvent;
- use TheSeer\phpDox\Generator\TraitStartEvent;
+outputDir = $config->getOutputDirectory();
- }
+ public function __construct(BuildConfig $config) {
+ $this->outputDir = $config->getOutputDirectory();
+ }
- public function registerEventHandlers(EventHandlerRegistry $registry) {
- $registry->addHandler('phpdox.end', $this, 'handleIndex');
- $registry->addHandler('class.start', $this, 'handle');
- $registry->addHandler('trait.start', $this, 'handle');
- $registry->addHandler('interface.start', $this, 'handle');
- $registry->addHandler('token.file.start', $this, 'handleToken');
- }
+ public function registerEventHandlers(EventHandlerRegistry $registry): void {
+ $registry->addHandler('phpdox.end', $this, 'handleIndex');
+ $registry->addHandler('class.start', $this, 'handle');
+ $registry->addHandler('trait.start', $this, 'handle');
+ $registry->addHandler('interface.start', $this, 'handle');
+ $registry->addHandler('token.file.start', $this, 'handleToken');
+ }
- public function handle(AbstractEvent $event) {
- if ($event instanceof ClassStartEvent) {
- $ctx = $event->getClass();
- $path = 'classes';
- } else if ($event instanceof TraitStartEvent) {
- $ctx = $event->getTrait();
+ public function handle(AbstractEvent $event): void {
+ if ($event instanceof ClassStartEvent) {
+ $ctx = $event->getClass();
+ $path = 'classes';
+ } else {
+ if ($event instanceof TraitStartEvent) {
+ $ctx = $event->getTrait();
$path = 'traits';
- } else if ($event instanceof InterfaceStartEvent) {
- $ctx = $event->getInterface();
- $path = 'interfaces';
} else {
- throw new EngineException(
- 'Unexpected Event of type ' . get_class($event),
- XMLEngineException::UnexpectedType
- );
+ if ($event instanceof InterfaceStartEvent) {
+ $ctx = $event->getInterface();
+ $path = 'interfaces';
+ } else {
+ throw new EngineException(
+ 'Unexpected Event of type ' . \get_class($event),
+ XMLEngineException::UnexpectedType
+ );
+ }
}
- $dom = $ctx->asDom();
- $this->saveDomDocument($dom,
- $this->outputDir . '/' . $path . '/' . str_replace('\\', '_', $dom->documentElement->getAttribute('full')) . '.xml'
- );
- }
-
- public function handleIndex(PHPDoxEndEvent $event) {
- $dom = $event->getIndex()->asDom();
- $this->saveDomDocument($dom, $this->outputDir . '/index.xml');
}
+ $dom = $ctx->asDom();
+ $this->saveDomDocument(
+ $dom,
+ $this->outputDir . '/' . $path . '/' . \str_replace('\\', '_', $dom->documentElement->getAttribute('full')) . '.xml'
+ );
+ }
- public function handleToken(TokenFileStartEvent $event) {
- $dom = $event->getTokenFile()->asDom();
- $this->saveDomDocument($dom,
- $this->outputDir . '/tokens/' . $dom->queryOne('//phpdox:file')->getAttribute('relative') . '.xml'
- );
-
- }
+ public function handleIndex(PHPDoxEndEvent $event): void {
+ $dom = $event->getIndex()->asDom();
+ $this->saveDomDocument($dom, $this->outputDir . '/index.xml');
}
- class XMLEngineException extends EngineException {
- const UnexpectedType = 2;
+ public function handleToken(TokenFileStartEvent $event): void {
+ $dom = $event->getTokenFile()->asDom();
+ $this->saveDomDocument(
+ $dom,
+ $this->outputDir . '/tokens/' . $dom->queryOne('//phpdox:file')->getAttribute('relative') . '.xml'
+ );
}
+}
+class XMLEngineException extends EngineException {
+ public const UnexpectedType = 2;
}
diff -Nru phpdox-0.11.2/src/generator/enricher/AbstractEnricher.php phpdox-0.12.0/src/generator/enricher/AbstractEnricher.php
--- phpdox-0.11.2/src/generator/enricher/AbstractEnricher.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/enricher/AbstractEnricher.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,38 +1,33 @@
-ownerDocument;
- $container = $node->queryOne('phpdox:enrichments');
- if(!$container) {
- $container = $dom->createElementNS(self::XMLNS, 'enrichments');
- $node->appendChild($container);
- }
-
- $enrichment = $container->queryOne(
- $dom->prepareQuery('phpdox:enrichment[@type=:type]', array('type' => $type))
- );
-
- if (!$enrichment) {
- $enrichment = $dom->createElementNS(self::XMLNS, 'enrichment');
- $enrichment->setAttribute('type', $type);
- $container->appendChild($enrichment);
- }
+ /**
+ * @param $type
+ */
+ protected function getEnrichtmentContainer(fDOMElement $node, $type): fDOMElement {
+ $dom = $node->ownerDocument;
+ $container = $node->queryOne('phpdox:enrichments');
+
+ if (!$container) {
+ $container = $dom->createElementNS(self::XMLNS, 'enrichments');
+ $node->appendChild($container);
+ }
- return $enrichment;
+ $enrichment = $container->queryOne(
+ $dom->prepareQuery('phpdox:enrichment[@type=:type]', ['type' => $type])
+ );
+
+ if (!$enrichment) {
+ $enrichment = $dom->createElementNS(self::XMLNS, 'enrichment');
+ $enrichment->setAttribute('type', $type);
+ $container->appendChild($enrichment);
}
- }
+ return $enrichment;
+ }
}
diff -Nru phpdox-0.11.2/src/generator/enricher/build/Build.php phpdox-0.12.0/src/generator/enricher/build/Build.php
--- phpdox-0.11.2/src/generator/enricher/build/Build.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/enricher/build/Build.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,124 +1,118 @@
-enrichers = array_keys($config->getGeneratorConfig()->getActiveEnrichSources());
- $this->version = $config->getVersion();
- }
+use TheSeer\fDOM\fDOMDocument;
+use TheSeer\fDOM\fDOMElement;
+use TheSeer\phpDox\EnrichConfig;
+use TheSeer\phpDox\Generator\ClassStartEvent;
+use TheSeer\phpDox\Generator\InterfaceStartEvent;
+use TheSeer\phpDox\Generator\PHPDoxStartEvent;
+use TheSeer\phpDox\Generator\TokenFileStartEvent;
+use TheSeer\phpDox\Generator\TraitStartEvent;
+use TheSeer\phpDox\Version;
+
+class Build extends AbstractEnricher implements StartEnricherInterface,
+ ClassEnricherInterface, TraitEnricherInterface, InterfaceEnricherInterface, TokenFileEnricherInterface {
+ /**
+ * @var array
+ */
+ private $enrichers;
+
+ /**
+ * @var fDOMElement
+ */
+ private $buildInfo;
+
+ /**
+ * @var Version
+ */
+ private $version;
+
+ public function __construct(EnrichConfig $config) {
+ $this->enrichers = \array_keys($config->getGeneratorConfig()->getActiveEnrichSources());
+ $this->version = $config->getVersion();
+ }
- /**
- * @return string
- */
- public function getName() {
- return 'Build Information';
- }
+ public function getName(): string {
+ return 'Build Information';
+ }
- public function enrichStart(PHPDoxStartEvent $event) {
- $this->genericProcess($event->getIndex()->asDom());
- }
+ public function enrichStart(PHPDoxStartEvent $event): void {
+ $this->genericProcess($event->getIndex()->asDom());
+ }
- public function enrichClass(ClassStartEvent $event) {
- $this->genericProcess($event->getClass()->asDom());
- }
+ public function enrichClass(ClassStartEvent $event): void {
+ $this->genericProcess($event->getClass()->asDom());
+ }
- public function enrichInterface(InterfaceStartEvent $event) {
- $this->genericProcess($event->getInterface()->asDom());
- }
+ public function enrichInterface(InterfaceStartEvent $event): void {
+ $this->genericProcess($event->getInterface()->asDom());
+ }
- public function enrichTrait(TraitStartEvent $event) {
- $this->genericProcess($event->getTrait()->asDom());
- }
+ public function enrichTrait(TraitStartEvent $event): void {
+ $this->genericProcess($event->getTrait()->asDom());
+ }
+
+ public function enrichTokenFile(TokenFileStartEvent $event): void {
+ $this->genericProcess($event->getTokenFile()->asDom());
+ }
- public function enrichTokenFile(TokenFileStartEvent $event) {
- $this->genericProcess($event->getTokenFile()->asDom());
+ private function genericProcess(fDOMDocument $dom): void {
+ $enrichment = $this->getEnrichtmentContainer($dom->documentElement, 'build');
+ $enrichment->appendChild(
+ $dom->importNode($this->getGeneralBuildInfo(), true)
+ );
+ }
+
+ private function getGeneralBuildInfo() {
+ if ($this->buildInfo != null) {
+ return $this->buildInfo;
}
- private function genericProcess(fDOMDocument $dom) {
- $enrichment = $this->getEnrichtmentContainer($dom->documentElement, 'build');
- $enrichment->appendChild(
- $dom->importNode($this->getGeneralBuildInfo(), true)
- );
+ $dom = new fDOMDocument();
+ $this->buildInfo = $dom->createDocumentFragment();
+
+ $dateNode = $dom->createElementNS(self::XMLNS, 'date');
+ $this->buildInfo->appendChild($dateNode);
+
+ $date = new \DateTimeImmutable('now');
+ $dateNode->setAttribute('unix', $date->getTimestamp());
+ $dateNode->setAttribute('date', $date->format('d-m-Y'));
+ $dateNode->setAttribute('time', $date->format('H:i:s'));
+ $dateNode->setAttribute('iso', $date->format('c'));
+ $dateNode->setAttribute('rfc', $date->format('r'));
+
+ $phpdoxNode = $dom->createElementNS(self::XMLNS, 'phpdox');
+ $this->buildInfo->appendChild($phpdoxNode);
+
+ $phpdoxNode->setAttribute('version', $this->version->getVersion());
+ $phpdoxNode->setAttribute('info', $this->version->getInfoString());
+ $phpdoxNode->setAttribute('generated', $this->version->getGeneratedByString());
+ $phpdoxNode->setAttribute('phar', \defined('PHPDOX_PHAR') ? 'yes' : 'no');
+
+ foreach ($this->enrichers as $enricher) {
+ $enricherNode = $phpdoxNode->appendElementNS(self::XMLNS, 'enricher');
+ $enricherNode->setAttribute('type', $enricher);
}
- private function getGeneralBuildInfo() {
- if ($this->buildInfo != NULL) {
- return $this->buildInfo;
- }
-
- $dom = new fDOMDocument();
- $this->buildInfo = $dom->createDocumentFragment();
-
- $dateNode = $dom->createElementNS(self::XMLNS, 'date');
- $this->buildInfo->appendChild($dateNode);
-
- $date = new \DateTime('now');
- $dateNode->setAttribute('unix', $date->getTimestamp());
- $dateNode->setAttribute('date', $date->format('d-m-Y'));
- $dateNode->setAttribute('time', $date->format('H:i:s'));
- $dateNode->setAttribute('iso', $date->format('c'));
- $dateNode->setAttribute('rfc', $date->format('r'));
-
- $phpdoxNode = $dom->createElementNS(self::XMLNS, 'phpdox');
- $this->buildInfo->appendChild($phpdoxNode);
-
- $phpdoxNode->setAttribute('version', $this->version->getVersion());
- $phpdoxNode->setAttribute('info', $this->version->getInfoString());
- $phpdoxNode->setAttribute('generated', $this->version->getGeneratedByString());
- $phpdoxNode->setAttribute('phar', defined('PHPDOX_PHAR') ? 'yes' : 'no');
-
- foreach($this->enrichers as $enricher) {
- $enricherNode = $phpdoxNode->appendElementNS(self::XMLNS, 'enricher');
- $enricherNode->setAttribute('type', $enricher);
- }
-
- $phpNode = $dom->createElementNS(self::XMLNS, 'php');
- $this->buildInfo->appendChild($phpNode);
-
- $phpNode->setAttribute('version', PHP_VERSION);
- $phpNode->setAttribute('os', PHP_OS);
-
- foreach(get_loaded_extensions(true) as $extension) {
- $extNode = $dom->createElementNS(self::XMLNS, 'zendextension');
- $extNode->setAttribute('name', $extension);
- $phpNode->appendChild($extNode);
- }
- foreach(get_loaded_extensions(false) as $extension) {
- $extNode = $dom->createElementNS(self::XMLNS, 'extension');
- $extNode->setAttribute('name', $extension);
- $phpNode->appendChild($extNode);
- }
+ $phpNode = $dom->createElementNS(self::XMLNS, 'php');
+ $this->buildInfo->appendChild($phpNode);
- return $this->buildInfo;
+ $phpNode->setAttribute('version', \PHP_VERSION);
+ $phpNode->setAttribute('os', \PHP_OS);
+
+ foreach (\get_loaded_extensions(true) as $extension) {
+ $extNode = $dom->createElementNS(self::XMLNS, 'zendextension');
+ $extNode->setAttribute('name', $extension);
+ $phpNode->appendChild($extNode);
}
- }
+ foreach (\get_loaded_extensions(false) as $extension) {
+ $extNode = $dom->createElementNS(self::XMLNS, 'extension');
+ $extNode->setAttribute('name', $extension);
+ $phpNode->appendChild($extNode);
+ }
+ return $this->buildInfo;
+ }
}
diff -Nru phpdox-0.11.2/src/generator/enricher/checkstyle/CheckStyleConfig.php phpdox-0.12.0/src/generator/enricher/checkstyle/CheckStyleConfig.php
--- phpdox-0.11.2/src/generator/enricher/checkstyle/CheckStyleConfig.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/enricher/checkstyle/CheckStyleConfig.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,45 +1,46 @@
-context = $ctx;
+ $this->generator = $generator;
+ }
+ public function getLogFilePath() {
+ $basedirDefault = \dirname($this->context->ownerDocument->baseURI);
+ $path = $basedirDefault . '/build/logs';
- protected $defaultFileName = 'checkstyle.xml';
+ if ($this->context->parentNode->hasAttribute('base')) {
+ $path = $this->context->parentNode->getAttribute('base');
+ }
- public function __construct(GeneratorConfig $generator, fDOMElement $ctx) {
- $this->context = $ctx;
- $this->generator = $generator;
+ if ($path != '') {
+ $path .= '/';
}
+ $file = $this->context->queryOne('cfg:file');
- public function getLogFilePath() {
- $basedirDefault = dirname($this->context->ownerDocument->baseURI);
- $path = $basedirDefault . '/build/logs';
- if ($this->context->parentNode->hasAttribute('base')) {
- $path = $this->context->parentNode->getAttribute('base');
- }
- if ($path != '') { $path .= '/'; }
- $file = $this->context->queryOne('cfg:file');
- if ($file && $file->hasAttribute('name')) {
- $path .= $file->getAttribute('name');
- } else {
- $path .= $this->defaultFileName;
- }
- return $path;
+ if ($file && $file->hasAttribute('name')) {
+ $path .= $file->getAttribute('name');
+ } else {
+ $path .= $this->defaultFileName;
}
- }
+ return $path;
+ }
}
diff -Nru phpdox-0.11.2/src/generator/enricher/checkstyle/CheckStyle.php phpdox-0.12.0/src/generator/enricher/checkstyle/CheckStyle.php
--- phpdox-0.11.2/src/generator/enricher/checkstyle/CheckStyle.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/enricher/checkstyle/CheckStyle.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,105 +1,104 @@
-config = $config;
- $this->loadFindings($config->getLogFilePath());
- }
+ public function __construct(CheckStyleConfig $config) {
+ $this->config = $config;
+ $this->loadFindings($config->getLogFilePath());
+ }
- /**
- * @return string
- */
- public function getName() {
- return 'CheckStyle XML';
- }
+ public function getName(): string {
+ return 'CheckStyle XML';
+ }
- public function enrichClass(ClassStartEvent $event) {
- $this->enrichUnit($event->getClass());
- }
+ public function enrichClass(ClassStartEvent $event): void {
+ $this->enrichUnit($event->getClass());
+ }
- public function enrichInterface(InterfaceStartEvent $event) {
- $this->enrichUnit($event->getInterface());
- }
+ public function enrichInterface(InterfaceStartEvent $event): void {
+ $this->enrichUnit($event->getInterface());
+ }
- public function enrichTrait(TraitStartEvent $event) {
- $this->enrichUnit($event->getTrait());
- }
+ public function enrichTrait(TraitStartEvent $event): void {
+ $this->enrichUnit($event->getTrait());
+ }
- private function enrichUnit(AbstractUnitObject $ctx) {
- $file = $ctx->getSourceFile();
- if (isset($this->findings[$file])) {
- $this->processFindings($ctx->asDom(), $this->findings[$file]);
+ protected function processFinding(fDOMDocument $dom, $ref, \DOMElement $finding, $elementName = null) {
+ $enrichment = $this->getEnrichtmentContainer($ref, 'checkstyle');
+ $enrichFinding = $dom->createElementNS(static::XMLNS, ($elementName ?: $finding->getAttribute('severity', 'error')));
+ $enrichment->appendChild($enrichFinding);
+
+ foreach ($finding->attributes as $attr) {
+ if ($attr->localName == 'severity') {
+ continue;
}
+ $enrichFinding->setAttributeNode($dom->importNode($attr, true));
+ }
+
+ return $enrichFinding;
+ }
+
+ private function enrichUnit(AbstractUnitObject $ctx): void {
+ $file = $ctx->getSourceFile();
+
+ if (isset($this->findings[$file])) {
+ $this->processFindings($ctx->asDom(), $this->findings[$file]);
}
+ }
+
+ private function loadFindings($xmlFile): void {
+ $this->findings = [];
- private function loadFindings($xmlFile) {
- $this->findings = array();
- try {
- if (!file_exists($xmlFile)) {
- throw new EnricherException(
- sprintf('Logfile "%s" not found.', $xmlFile),
- EnricherException::LoadError
- );
- }
- $dom = new fDOMDocument();
- $dom->load($xmlFile);
- foreach($dom->query(static::FINDINGS_XPATH) as $file) {
- $this->findings[$file->getAttribute('name')] = $file->query('*');
- }
- } catch (fDOMException $e) {
+ try {
+ if (!\file_exists($xmlFile)) {
throw new EnricherException(
- sprintf('Parsing %s logfile failed: %s', static::XML_STYLE, $e->getMessage()),
+ \sprintf('Logfile "%s" not found.', $xmlFile),
EnricherException::LoadError
);
}
- }
-
- private function processFindings(fDOMDocument $dom, \DOMNodeList $findings) {
+ $dom = new fDOMDocument();
+ $dom->load($xmlFile);
- foreach($findings as $finding) {
- /** @var fDOMElement $finding */
- $line = $finding->getAttribute('line');
- $ref = $dom->queryOne(sprintf('//phpdox:*/*[@line = %d or (@start <= %d and @end >= %d)]', $line, $line, $line));
- if (!$ref) {
- // One src file may contain multiple classes/traits/interfaces, so the
- // finding might not apply to the current object since findings are based on filenames
- // but we have individual objects - so we just ignore the finding for this context
- continue;
- }
- $this->processFinding($dom, $ref, $finding);
+ foreach ($dom->query(static::FINDINGS_XPATH) as $file) {
+ $this->findings[$file->getAttribute('name')] = $file->query('*');
}
-
+ } catch (fDOMException $e) {
+ throw new EnricherException(
+ \sprintf('Parsing %s logfile failed: %s', static::XML_STYLE, $e->getMessage()),
+ EnricherException::LoadError
+ );
}
+ }
- protected function processFinding(fDOMDocument $dom, $ref, \DOMElement $finding, $elementName = null) {
- $enrichment = $this->getEnrichtmentContainer($ref, 'checkstyle');
- $enrichFinding = $dom->createElementNS(static::XMLNS, ($elementName ?: $finding->getAttribute('severity', 'error')));
- $enrichment->appendChild($enrichFinding);
- foreach($finding->attributes as $attr) {
- if ($attr->localName == 'severity') {
- continue;
- }
- $enrichFinding->setAttributeNode($dom->importNode($attr, true));
+ private function processFindings(fDOMDocument $dom, \DOMNodeList $findings): void {
+ foreach ($findings as $finding) {
+ /** @var fDOMElement $finding */
+ $line = $finding->getAttribute('line');
+ $ref = $dom->queryOne(\sprintf('//phpdox:*/*[@line = %d or (@start <= %d and @end >= %d)]', $line, $line, $line));
+
+ if (!$ref) {
+ // One src file may contain multiple classes/traits/interfaces, so the
+ // finding might not apply to the current object since findings are based on filenames
+ // but we have individual objects - so we just ignore the finding for this context
+ continue;
}
- return $enrichFinding;
+ $this->processFinding($dom, $ref, $finding);
}
}
-
}
diff -Nru phpdox-0.11.2/src/generator/enricher/ClassEnricherInterface.php phpdox-0.12.0/src/generator/enricher/ClassEnricherInterface.php
--- phpdox-0.11.2/src/generator/enricher/ClassEnricherInterface.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/enricher/ClassEnricherInterface.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,12 +1,8 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox\Generator\Enricher {
-
- class EnricherException extends \Exception {
-
- const LoadError = 1;
- }
+
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox\Generator\Enricher {
-
- interface EnricherInterface {
-
- /**
- * @return string
- */
- public function getName();
-
- }
+enrichers[$name] = $class;
+ }
- /**
- * @var array
- */
- private $enrichers = array();
+ public function addEnricherFactory($name, FactoryInterface $factory): void {
+ $this->enrichers[$name] = $factory;
+ }
- /**
- * @var array
- */
- private $configs = array();
+ public function getEnricherList() {
+ return \array_keys($this->enrichers);
+ }
- public function addEnricherClass($name, $class) {
- $this->enrichers[$name] = $class;
- }
+ public function setConfigClass($name, $class): void {
+ $this->configs[$name] = $class;
+ }
- public function addEnricherFactory($name, FactoryInterface $factory) {
- $this->enrichers[$name] = $factory;
- }
+ public function getInstanceFor(EnrichConfig $enrichCfg) {
+ $name = $enrichCfg->getType();
- public function getEnricherList() {
- return array_keys($this->enrichers);
+ if (!isset($this->enrichers[$name])) {
+ throw new FactoryException("Enricher '$name' is not registered.", FactoryException::UnknownEnricher);
}
- public function setConfigClass($name, $class) {
- $this->configs[$name] = $class;
+ if (isset($this->configs[$name])) {
+ $cfg = new $this->configs[$name]($enrichCfg->getGeneratorConfig(), $enrichCfg->getEnrichNode());
+ } else {
+ $cfg = $enrichCfg;
}
- public function getInstanceFor(EnrichConfig $enrichCfg) {
- $name = $enrichCfg->getType();
- if (!isset($this->enrichers[$name])) {
- throw new FactoryException("Enricher '$name' is not registered.", FactoryException::UnknownEnricher);
- }
-
- if (isset($this->configs[$name])) {
- $cfg = new $this->configs[$name]($enrichCfg->getGeneratorConfig(), $enrichCfg->getEnrichNode());
- } else {
- $cfg = $enrichCfg;
- }
-
- if ($this->enrichers[$name] instanceof FactoryInterface) {
- return $this->enrichers[$name]->getInstanceFor($name, $cfg);
- }
- return new $this->enrichers[$name]($cfg);
+ if ($this->enrichers[$name] instanceof FactoryInterface) {
+ return $this->enrichers[$name]->getInstanceFor($name, $cfg);
}
+ return new $this->enrichers[$name]($cfg);
}
+}
- class FactoryException extends \Exception {
- const UnknownEnricher = 1;
- }
-
+class FactoryException extends \Exception {
+ public const UnknownEnricher = 1;
}
diff -Nru phpdox-0.11.2/src/generator/enricher/FullEnricherInterface.php phpdox-0.12.0/src/generator/enricher/FullEnricherInterface.php
--- phpdox-0.11.2/src/generator/enricher/FullEnricherInterface.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/enricher/FullEnricherInterface.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,13 +1,10 @@
-context = $ctx;
+ $this->generator = $generator;
+ }
- use TheSeer\fDOM\fDOMElement;
- use TheSeer\phpDox\FileInfo;
- use TheSeer\phpDox\GeneratorConfig;
+ public function getSourceDirectory(): FileInfo {
+ return $this->generator->getProjectConfig()->getSourceDirectory();
+ }
- class GitConfig {
+ public function getGitBinary(): string {
+ $git = $this->context->queryOne('cfg:git');
- /**
- * @var GeneratorConfig
- */
- private $generator;
+ if (!$git) {
+ return 'git';
+ }
- /**
- * @var fDOMElement
- */
- private $context;
+ return $git->getAttribute('binary', 'git');
+ }
- public function __construct(GeneratorConfig $generator, fDOMElement $ctx) {
- $this->context = $ctx;
- $this->generator = $generator;
- }
+ public function doLogProcessing(): bool {
+ $history = $this->context->queryOne('cfg:history');
- /**
- * @return FileInfo
- */
- public function getSourceDirectory() {
- return $this->generator->getProjectConfig()->getSourceDirectory();
+ if (!$history) {
+ return true;
}
- /**
- * @return string
- */
- public function getGitBinary() {
- $git = $this->context->queryOne('cfg:git');
- if (!$git) {
- return 'git';
- }
- return $git->getAttribute('binary', 'git');
- }
+ return $history->getAttribute('enabled', 'true') == 'true';
+ }
- /**
- * @return bool
- */
- public function doLogProcessing() {
- $history = $this->context->queryOne('cfg:history');
- if (!$history) {
- return true;
- }
- return $history->getAttribute('enabled', 'true') == 'true';
- }
+ public function getLogLimit(): int {
+ $history = $this->context->queryOne('cfg:history');
- /**
- * @return int
- */
- public function getLogLimit() {
- $history = $this->context->queryOne('cfg:history');
- if (!$history) {
- return 100;
- }
- return (int)$history->getAttribute('limit', 100);
+ if (!$history) {
+ return 100;
}
- public function getLogfilePath() {
- $history = $this->context->queryOne('cfg:history');
- if (!$history || $history->getAttribute('cache') == '') {
- return $this->generator->getProjectConfig()->getWorkDirectory() . '/gitlog.xml';
- }
- return $history->getAttribute('cache');
+ return (int)$history->getAttribute('limit', 100);
+ }
+
+ public function getLogfilePath() {
+ $history = $this->context->queryOne('cfg:history');
+
+ if (!$history || $history->getAttribute('cache') == '') {
+ return $this->generator->getProjectConfig()->getWorkDirectory() . '/gitlog.xml';
}
+ return $history->getAttribute('cache');
}
-
}
diff -Nru phpdox-0.11.2/src/generator/enricher/git/GitEnricherException.php phpdox-0.12.0/src/generator/enricher/git/GitEnricherException.php
--- phpdox-0.11.2/src/generator/enricher/git/GitEnricherException.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/enricher/git/GitEnricherException.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,11 +1,10 @@
-ensureExecFunctionEnabled();
+ $this->ensureGitVersionSupported($config->getGitBinary());
+ $this->config = $config;
+ }
- /**
- * Array of tokens for git log
- * see git log --help for more details
- *
- * @var array
- */
- private $tokens = array('H','aE','aN','cE','cN','at','ct');
+ public function getName(): string {
+ return 'GIT information';
+ }
- /**
- * @var GitConfig
- */
- private $config;
+ public function enrichStart(PHPDoxStartEvent $event): void {
+ $dom = $event->getIndex()->asDom();
+ /** @var fDOMElement $enrichtment */
+ $enrichtment = $this->getEnrichtmentContainer($dom->documentElement, 'git');
+
+ $binary = $this->config->getGitBinary();
+
+ $devNull = \mb_strtolower(\mb_substr(\PHP_OS, 0, 3)) == 'win' ? 'nul' : '/dev/null';
+
+ $cwd = \getcwd();
+ \chdir($this->config->getSourceDirectory()->getPathname());
+ $describe = \exec($binary . ' describe --always --dirty 2>' . $devNull, $foo, $rc);
+
+ if ($rc !== 0) {
+ $enrichtment->appendChild(
+ $dom->createComment('Not a git repository or no git binary available')
+ );
+ \chdir($cwd);
+ $this->noGitAvailable = true;
- /**
- * @var fDOMDocument
- */
- private $cacheDom;
+ return;
+ }
- /**
- * @var bool
- */
- private $cacheDirty = false;
+ \exec($binary . ' tag 2>' . $devNull, $tags, $rc);
- /**
- * @var string
- */
- private $commitSha1;
+ if (\count($tags)) {
+ $tagsNode = $enrichtment->appendElementNS(self::GITNS, 'tags');
- public function __construct(GitConfig $config) {
- $this->ensureExecFunctionEnabled();
- $this->ensureGitVersionSupported($config->getGitBinary());
- $this->config = $config;
+ foreach ($tags as $tagName) {
+ $tag = $tagsNode->appendElementNS(self::GITNS, 'tag');
+ $tag->setAttribute('name', $tagName);
+ }
}
- /**
- * @return string
- */
- public function getName() {
- return 'GIT information';
- }
+ $currentBranch = 'master';
+ \exec($binary . ' branch --no-color 2>' . $devNull, $branches, $rc);
- public function enrichStart(PHPDoxStartEvent $event) {
- $dom = $event->getIndex()->asDom();
- /** @var fDOMElement $enrichtment */
- $enrichtment = $this->getEnrichtmentContainer($dom->documentElement, 'git');
-
- $binary = $this->config->getGitBinary();
-
- $devNull = mb_strtolower(mb_substr(PHP_OS, 0, 3)) == 'win' ? 'nul' : '/dev/null';
-
- $cwd = getcwd();
- chdir($this->config->getSourceDirectory());
- $describe = exec($binary . ' describe --always --dirty 2>'.$devNull, $foo, $rc);
- if ($rc !== 0) {
- $enrichtment->appendChild(
- $dom->createComment('Not a git repository or no git binary available')
- );
- chdir($cwd);
- $this->noGitAvailable = true;
- return;
- }
+ if (\count($branches)) {
+ $branchesNode = $enrichtment->appendElementNS(self::GITNS, 'branches');
- exec($binary . ' tag 2>'.$devNull, $tags, $rc);
- if (count($tags)) {
- $tagsNode = $enrichtment->appendElementNS(self::GITNS, 'tags');
- foreach($tags as $tagName) {
- $tag = $tagsNode->appendElementNS(self::GITNS, 'tag');
- $tag->setAttribute('name', $tagName);
- }
- }
+ foreach ($branches as $branchName) {
+ $branch = $branchesNode->appendElementNS(self::GITNS, 'branch');
- $currentBranch = 'master';
- exec($binary . ' branch --no-color 2>'.$devNull, $branches, $rc);
- if (count($branches)) {
- $branchesNode = $enrichtment->appendElementNS(self::GITNS, 'branches');
- foreach($branches as $branchName) {
- $branch = $branchesNode->appendElementNS(self::GITNS, 'branch');
- if ($branchName[0] == '*') {
- $branchName = trim(mb_substr($branchName, 1));
- $currentBranch = $branchName;
- } else {
- $branchName = trim($branchName);
- }
- $branch->setAttribute('name', $branchName);
+ if ($branchName[0] == '*') {
+ $branchName = \trim(\mb_substr($branchName, 1));
+ $currentBranch = $branchName;
+ } else {
+ $branchName = \trim($branchName);
}
+ $branch->setAttribute('name', $branchName);
}
+ }
- $current = $enrichtment->appendElementNS(self::GITNS, 'current');
- $current->setAttribute('describe', $describe);
- $current->setAttribute('branch', $currentBranch);
+ $current = $enrichtment->appendElementNS(self::GITNS, 'current');
+ $current->setAttribute('describe', $describe);
+ $current->setAttribute('branch', $currentBranch);
- $this->commitSha1 = exec($binary . " rev-parse HEAD 2>".$devNull);
- $current->setAttribute('commit', $this->commitSha1);
+ $this->commitSha1 = \exec($binary . ' rev-parse HEAD 2>' . $devNull);
+ $current->setAttribute('commit', $this->commitSha1);
- chdir($cwd);
- }
+ \chdir($cwd);
+ }
+
+ public function enrichClass(ClassStartEvent $event): void {
+ $this->enrichByFile($event->getClass()->asDom());
+ }
- public function enrichClass(ClassStartEvent $event) {
- $this->enrichByFile($event->getClass()->asDom());
+ public function enrichInterface(InterfaceStartEvent $event): void {
+ $this->enrichByFile($event->getInterface()->asDom());
+ }
+
+ public function enrichTrait(TraitStartEvent $event): void {
+ $this->enrichByFile($event->getTrait()->asDom());
+ }
+
+ public function enrichEnd(PHPDoxEndEvent $event): void {
+ if ($this->cacheDirty) {
+ $path = \dirname($this->config->getLogfilePath());
+
+ if (!\file_exists($path)) {
+ \mkdir($path, 0777, true);
+ }
+ $this->cacheDom->save($this->config->getLogfilePath());
}
+ }
- public function enrichInterface(InterfaceStartEvent $event) {
- $this->enrichByFile($event->getInterface()->asDom());
+ private function enrichByFile(fDOMDocument $dom): void {
+ if ($this->noGitAvailable) {
+ return;
}
+ $fileNode = $dom->queryOne('//phpdox:file');
- public function enrichTrait(TraitStartEvent $event) {
- $this->enrichByFile($event->getTrait()->asDom());
+ if (!$fileNode) {
+ return;
}
- public function enrichEnd(PHPDoxEndEvent $event) {
- if ($this->cacheDirty) {
- $path = dirname($this->config->getLogfilePath());
- if (!file_exists($path)) {
- mkdir($path, 0777, true);
- }
- $this->cacheDom->save($this->config->getLogfilePath());
- }
+ /** @var fDOMElement $enrichtment */
+ $enrichtment = $this->getEnrichtmentContainer($dom->documentElement, 'git');
+
+ if (!$this->config->doLogProcessing()) {
+ $enrichtment->appendChild(
+ $dom->createComment('GitEnricher: Log processing disabled in configuration ')
+ );
+
+ return;
}
- private function enrichByFile(fDOMDocument $dom) {
- if ($this->noGitAvailable) {
- return;
- }
- $fileNode = $dom->queryOne('//phpdox:file');
- if (!$fileNode) {
- return;
- }
+ if ($this->loadFromCache($fileNode, $enrichtment)) {
+ return;
+ }
- /** @var fDOMElement $enrichtment */
- $enrichtment = $this->getEnrichtmentContainer($dom->documentElement, 'git');
- if (!$this->config->doLogProcessing()) {
- $enrichtment->appendChild(
- $dom->createComment('GitEnricher: Log processing disabled in configuration ')
- );
- return;
- }
+ try {
+ $count = 0;
+ $limit = $this->config->getLogLimit();
+ $log = $this->getLogHistory($fileNode->getAttribute('realpath'));
+ $block = [];
- if ($this->loadFromCache($fileNode, $enrichtment)) {
- return;
- }
+ foreach ($log as $line) {
+ if ($line == '[EOF]') {
+ $this->addCommit($enrichtment, $this->tokens, $block);
+ $block = [];
+ $count++;
- try {
- $count = 0;
- $limit = $this->config->getLogLimit();
- $log = $this->getLogHistory($fileNode->getAttribute('realpath'));
- $block = array();
-
- foreach($log as $line) {
- if ($line == '[EOF]') {
- $this->addCommit($enrichtment, $this->tokens, $block);
- $block = array();
- $count++;
- if ($count > $limit) {
- break;
- }
- continue;
+ if ($count > $limit) {
+ break;
}
- $block[] = $line;
- }
-
- $this->addToCache($fileNode, $enrichtment);
- } catch (GitEnricherException $e) {
- $enrichtment->appendChild(
- $dom->createComment('GitEnricher Error: ' . $e->getMessage())
- );
+ continue;
+ }
+ $block[] = $line;
}
+ $this->addToCache($fileNode, $enrichtment);
+ } catch (GitEnricherException $e) {
+ $enrichtment->appendChild(
+ $dom->createComment('GitEnricher Error: ' . $e->getMessage())
+ );
}
+ }
+
+ private function addCommit(fDOMElement $enrichment, array $tokens, array $block): void {
+ [$data, $text] = \array_chunk($block, \count($tokens));
- private function addCommit(fDOMElement $enrichment, array $tokens, array $block) {
- list($data, $text) = array_chunk($block, count($tokens));
+ $data = \array_combine($tokens, $data);
- $data = array_combine($tokens, $data);
+ $commit = $enrichment->appendElementNS(self::GITNS, 'commit');
+ $commit->setAttribute('sha1', $data['H']);
- $commit = $enrichment->appendElementNS(self::GITNS, 'commit');
- $commit->setAttribute('sha1', $data['H']);
+ $author = $commit->appendElementNS(self::GITNS, 'author');
+ $author->setAttribute('email', $data['aE']);
+ $author->setAttribute('name', $data['aN']);
+ $author->setAttribute('time', \date('c', (int)$data['at']));
+ $author->setAttribute('unixtime', $data['at']);
+
+ $commiter = $commit->appendElementNS(self::GITNS, 'commiter');
+ $commiter->setAttribute('email', $data['cE']);
+ $commiter->setAttribute('name', $data['cN']);
+ $commiter->setAttribute('time', \date('c', (int)$data['ct']));
+ $commiter->setAttribute('unixtime', $data['ct']);
- $author = $commit->appendElementNS(self::GITNS, 'author');
- $author->setAttribute('email', $data['aE']);
- $author->setAttribute('name', $data['aN']);
- $author->setAttribute('time', date('c', $data['at']));
- $author->setAttribute('unixtime', $data['at']);
-
- $commiter = $commit->appendElementNS(self::GITNS, 'commiter');
- $commiter->setAttribute('email', $data['cE']);
- $commiter->setAttribute('name', $data['cN']);
- $commiter->setAttribute('time', date('c', $data['ct']));
- $commiter->setAttribute('unixtime', $data['ct']);
-
- $message = $commit->appendElementNS(self::GITNS, 'message');
- $message->appendTextNode(trim(join("\n", $text)));
+ $message = $commit->appendElementNS(self::GITNS, 'message');
+ $message->appendTextNode(\trim(\implode("\n", $text)));
+ }
+
+ private function getLogHistory($filename) {
+ /*
+ * H:8283723b40725a91c684e27c0c0449b959a48740
+ * aE:Arne@Blankerts.de
+ * aN:Arne Blankerts
+ * cE:Arne@Blankerts.de
+ * cN:Arne Blankerts
+ * at:1375611883
+ * ct:1375836305
+ * {commit message text}
+ * [EOF]
+ *
+ * see git log --help for more details
+ *
+ * The logic of addCommit assumes the commit message to be last
+ */
+ $format = '%' . \implode('%n%', $this->tokens) . '%n%B%n[EOF]';
+
+ $cwd = \getcwd();
+
+ if (!\file_exists($filename)) {
+ throw new GitEnricherException('Error getting log history for file ' . $filename . ' (file not found)', GitEnricherException::FetchingHistoryFailed);
}
+ \chdir(\dirname($filename));
+ $fname = \escapeshellarg(\basename($filename));
+ \exec(\sprintf($this->config->getGitBinary() . ' log --no-color --follow --pretty=format:"%s" %s', $format, $fname), $log, $rc);
+ \chdir($cwd);
+ if ($rc !== 0) {
+ throw new GitEnricherException('Error getting log history for file ' . $filename, GitEnricherException::FetchingHistoryFailed);
+ }
- private function getLogHistory($filename) {
- /*
- * H:8283723b40725a91c684e27c0c0449b959a48740
- * aE:Arne@Blankerts.de
- * aN:Arne Blankerts
- * cE:Arne@Blankerts.de
- * cN:Arne Blankerts
- * at:1375611883
- * ct:1375836305
- * {commit message text}
- * [EOF]
- *
- * see git log --help for more details
- *
- * The logic of addCommit assumes the commit message to be last
- */
- $format = '%' . join('%n%', $this->tokens) . '%n%B%n[EOF]';
-
- $cwd = getcwd();
- if (!file_exists($filename)) {
- throw new GitEnricherException('Error getting log history for file ' . $filename . ' (file not found)', GitEnricherException::FetchingHistoryFailed);
- }
- chdir(dirname($filename));
- $fname = escapeshellarg(basename($filename));
- exec(sprintf($this->config->getGitBinary() . ' log --no-color --follow --pretty=format:"%s" %s', $format, $fname), $log, $rc);
- chdir($cwd);
- if ($rc !== 0) {
- throw new GitEnricherException('Error getting log history for file ' . $filename, GitEnricherException::FetchingHistoryFailed);
- }
- return $log;
+ return $log;
+ }
+
+ private function loadFromCache(fDOMElement $fileNode, fDOMElement $enrichment) {
+ $dom = $this->getCacheDom();
+ $fields = [
+ 'path' => $fileNode->getAttribute('path'),
+ 'file' => $fileNode->getAttribute('file')
+ ];
+ $query = $dom->prepareQuery('//*[@path = :path and @file = :file]', $fields);
+ $cacheNode = $dom->queryOne($query);
+
+ if (!$cacheNode) {
+ return false;
+ }
+
+ foreach ($cacheNode->childNodes as $child) {
+ $enrichment->appendChild(
+ $enrichment->ownerDocument->importNode($child, true)
+ );
}
- private function loadFromCache(fDOMElement $fileNode, fDOMElement $enrichment) {
- $dom = $this->getCacheDom();
- $fields = array(
- 'path' => $fileNode->getAttribute('path'),
- 'file' => $fileNode->getAttribute('file')
+ return true;
+ }
+
+ private function addToCache(fDOMElement $fileNode, fDOMElement $enrichment): void {
+ $dom = $this->getCacheDom();
+ $import = $dom->createElementNS(self::GITNS, 'file');
+
+ foreach ($fileNode->attributes as $attr) {
+ $import->appendChild(
+ $dom->importNode($attr)
);
- $query = $dom->prepareQuery('//*[@path = :path and @file = :file]', $fields);
- $cacheNode = $dom->queryOne($query);
- if (!$cacheNode) {
- return false;
- }
- foreach($cacheNode->childNodes as $child) {
- $enrichment->appendChild(
- $enrichment->ownerDocument->importNode($child, true)
- );
- }
- return true;
}
- private function addToCache(fDOMElement $fileNode, fDOMElement $enrichment) {
- $dom = $this->getCacheDom();
- $import = $dom->createElementNS(self::GITNS, 'file');
- foreach($fileNode->attributes as $attr) {
- $import->appendChild(
- $dom->importNode($attr)
- );
- }
- foreach($enrichment->childNodes as $node) {
- $import->appendChild(
- $dom->importNode($node, true)
- );
- }
- $dom->documentElement->appendChild($import);
- $this->cacheDirty = true;
+ foreach ($enrichment->childNodes as $node) {
+ $import->appendChild(
+ $dom->importNode($node, true)
+ );
}
+ $dom->documentElement->appendChild($import);
+ $this->cacheDirty = true;
+ }
+
+ private function getCacheDom() {
+ if ($this->cacheDom === null) {
+ $this->cacheDom = new fDOMDocument();
+ $cacheFile = $this->config->getLogfilePath();
+
+ if (\file_exists($cacheFile)) {
+ $this->cacheDom->load($cacheFile);
+
+ $sha1 = $this->cacheDom->documentElement->getAttribute('sha1');
+ $cwd = \getcwd();
+ \chdir($this->config->getSourceDirectory()->getPathname());
+ \exec($this->config->getGitBinary() . ' diff --name-only ' . $sha1, $files, $rc);
+
+ foreach ($files as $file) {
+ $fields = [
+ 'path' => \dirname($file),
+ 'file' => \basename($file)
+ ];
+ $query = $this->cacheDom->prepareQuery('//*[@path = :path and @file = :file]', $fields);
+ $node = $this->cacheDom->queryOne($query);
- private function getCacheDom() {
- if ($this->cacheDom === NULL) {
- $this->cacheDom = new fDOMDocument();
- $cacheFile = $this->config->getLogfilePath();
- if (file_exists($cacheFile)) {
- $this->cacheDom->load($cacheFile);
-
- $sha1 = $this->cacheDom->documentElement->getAttribute('sha1');
- $cwd = getcwd();
- chdir($this->config->getSourceDirectory());
- exec($this->config->getGitBinary() . ' diff --name-only ' . $sha1, $files, $rc);
- foreach($files as $file) {
- $fields = array(
- 'path' => dirname($file),
- 'file' => basename($file)
- );
- $query = $this->cacheDom->prepareQuery('//*[@path = :path and @file = :file]', $fields);
- $node = $this->cacheDom->queryOne($query);
- if (!$node) {
- continue;
- }
- $node->parentNode->removeChild($node);
+ if (!$node) {
+ continue;
}
- chdir($cwd);
- } else {
- $this->cacheDom->loadXML('');
- $this->cacheDom->documentElement->setAttribute('sha1', $this->commitSha1);
+ $node->parentNode->removeChild($node);
}
+ \chdir($cwd);
+ } else {
+ $this->cacheDom->loadXML('');
+ $this->cacheDom->documentElement->setAttribute('sha1', $this->commitSha1);
}
- return $this->cacheDom;
}
- /**
- * @throws GitEnricherException
- */
- private function ensureExecFunctionEnabled() {
- if (strpos(ini_get('disable_functions'), 'exec') !== FALSE) {
- throw new GitEnricherException(
- 'The use of "exec" has been disabled in php.ini but is required for this enricher',
- GitEnricherException::ExecDisabled
- );
- }
- }
-
- private function ensureGitVersionSupported($binary) {
- $output = exec(sprintf('%s --version', $binary));
- $parts = explode(' ', $output);
- $version = array_pop($parts);
-
- if (version_compare($version, '1.7.2', '<')) {
- throw new GitEnricherException(
- sprintf('Your version of GIT is too old. Please upgrade to at least version 1.7.2 (Found: %s)', $version),
- GitEnricherException::GitVersionTooOld
- );
+ return $this->cacheDom;
+ }
- }
+ /**
+ * @throws GitEnricherException
+ */
+ private function ensureExecFunctionEnabled(): void {
+ if (\strpos(\ini_get('disable_functions'), 'exec') !== false) {
+ throw new GitEnricherException(
+ 'The use of "exec" has been disabled in php.ini but is required for this enricher',
+ GitEnricherException::ExecDisabled
+ );
}
-
}
+ private function ensureGitVersionSupported($binary): void {
+ $output = \exec(\sprintf('%s --version', $binary));
+ $parts = \explode(' ', $output);
+ $version = \array_pop($parts);
+
+ if (\version_compare($version, '1.7.2', '<')) {
+ throw new GitEnricherException(
+ \sprintf('Your version of GIT is too old. Please upgrade to at least version 1.7.2 (Found: %s)', $version),
+ GitEnricherException::GitVersionTooOld
+ );
+ }
+ }
}
diff -Nru phpdox-0.11.2/src/generator/enricher/InterfaceEnricherInterface.php phpdox-0.12.0/src/generator/enricher/InterfaceEnricherInterface.php
--- phpdox-0.11.2/src/generator/enricher/InterfaceEnricherInterface.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/enricher/InterfaceEnricherInterface.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,12 +1,8 @@
-tagName);
+ $enrichFinding->setAttribute('message', $finding->nodeValue);
- protected function processFinding(fDOMDocument $dom, $ref, \DOMElement $finding, $elementName = null) {
- $enrichFinding = parent::processFinding($dom, $ref, $finding, $finding->tagName);
- $enrichFinding->setAttribute('message', $finding->nodeValue);
- return $enrichFinding;
- }
+ return $enrichFinding;
}
-
}
diff -Nru phpdox-0.11.2/src/generator/enricher/phploc/PHPLocConfig.php phpdox-0.12.0/src/generator/enricher/phploc/PHPLocConfig.php
--- phpdox-0.11.2/src/generator/enricher/phploc/PHPLocConfig.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/enricher/phploc/PHPLocConfig.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,43 +1,44 @@
-context = $ctx;
+ $this->generator = $generator;
+ }
- /**
- * @var GeneratorConfig
- */
- private $generator;
+ public function getLogFilePath() {
+ $basedirDefault = \dirname($this->context->ownerDocument->baseURI);
+ $path = $basedirDefault . '/build/logs';
- /**
- * @var fDOMElement
- */
- private $context;
+ if ($this->context->parentNode->hasAttribute('base')) {
+ $path = $this->context->parentNode->getAttribute('base');
+ }
- public function __construct(GeneratorConfig $generator, fDOMElement $ctx) {
- $this->context = $ctx;
- $this->generator = $generator;
+ if ($path != '') {
+ $path .= '/';
}
+ $file = $this->context->queryOne('cfg:file');
- public function getLogFilePath() {
- $basedirDefault = dirname($this->context->ownerDocument->baseURI);
- $path = $basedirDefault . '/build/logs';
- if ($this->context->parentNode->hasAttribute('base')) {
- $path = $this->context->parentNode->getAttribute('base');
- }
- if ($path != '') { $path .= '/'; }
- $file = $this->context->queryOne('cfg:file');
- if ($file && $file->hasAttribute('name')) {
- $path .= $file->getAttribute('name');
- } else {
- $path .= 'phploc.xml';
- }
- return $path;
+ if ($file && $file->hasAttribute('name')) {
+ $path .= $file->getAttribute('name');
+ } else {
+ $path .= 'phploc.xml';
}
+ return $path;
}
-
}
diff -Nru phpdox-0.11.2/src/generator/enricher/phploc/PHPLoc.php phpdox-0.12.0/src/generator/enricher/phploc/PHPLoc.php
--- phpdox-0.11.2/src/generator/enricher/phploc/PHPLoc.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/enricher/phploc/PHPLoc.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,65 +1,58 @@
-loadXML($config->getLogFilePath());
- }
-
- /**
- * @return string
- */
- public function getName() {
- return 'PHPLoc xml';
- }
+ public function __construct(PHPLocConfig $config) {
+ $this->loadXML($config->getLogFilePath());
+ }
- public function enrichStart(PHPDoxStartEvent $event) {
- $index = $event->getIndex()->asDom();
- $enrichment = $this->getEnrichtmentContainer($index->documentElement, 'phploc');
-
- // Import nodes in a loop to fix empty namespaces until sebastian fixes phploc to generate
- // "proper" xml ;)
- foreach($this->dom->documentElement->getElementsByTagName('*') as $node) {
- /** @var \DOMNode $node */
-
- $enrichment->appendChild(
- $index->createElementNS(
- 'http://xml.phpdox.net/src',
- $node->localName,
- $node->nodeValue
- )
- );
+ public function getName(): string {
+ return 'PHPLoc xml';
+ }
- }
+ public function enrichStart(PHPDoxStartEvent $event): void {
+ $index = $event->getIndex()->asDom();
+ $enrichment = $this->getEnrichtmentContainer($index->documentElement, 'phploc');
+
+ // Import nodes in a loop to fix empty namespaces until sebastian fixes phploc to generate
+ // "proper" xml ;)
+ foreach ($this->dom->documentElement->getElementsByTagName('*') as $node) {
+ /* @var \DOMNode $node */
+
+ $enrichment->appendChild(
+ $index->createElementNS(
+ 'http://xml.phpdox.net/src',
+ $node->localName,
+ $node->nodeValue
+ )
+ );
}
+ }
- private function loadXML($fname) {
- try {
- if (!file_exists($fname)) {
- throw new EnricherException(
- sprintf('PHPLoc xml file "%s" not found.', $fname),
- EnricherException::LoadError
- );
- }
- $this->dom = new fDOMDocument();
- $this->dom->load($fname);
- } catch (fDOMException $e) {
+ private function loadXML($fname): void {
+ try {
+ if (!\file_exists($fname)) {
throw new EnricherException(
- 'Parsing PHPLoc xml file failed: ' . $e->getMessage(),
+ \sprintf('PHPLoc xml file "%s" not found.', $fname),
EnricherException::LoadError
);
}
+ $this->dom = new fDOMDocument();
+ $this->dom->load($fname);
+ } catch (fDOMException $e) {
+ throw new EnricherException(
+ 'Parsing PHPLoc xml file failed: ' . $e->getMessage(),
+ EnricherException::LoadError
+ );
}
}
-
}
diff -Nru phpdox-0.11.2/src/generator/enricher/phpunit/PHPUnitConfig.php phpdox-0.12.0/src/generator/enricher/phpunit/PHPUnitConfig.php
--- phpdox-0.11.2/src/generator/enricher/phpunit/PHPUnitConfig.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/enricher/phpunit/PHPUnitConfig.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,58 +1,54 @@
-context = $ctx;
+ $this->generator = $generator;
+ }
- /**
- * @var fDOMElement
- */
- private $context;
+ public function getCoveragePath(): FileInfo {
+ $basedirDefault = \dirname($this->context->ownerDocument->baseURI);
+ $path = $basedirDefault . '/build/logs';
- public function __construct(GeneratorConfig $generator, fDOMElement $ctx) {
- $this->context = $ctx;
- $this->generator = $generator;
+ if ($this->context->parentNode->hasAttribute('base')) {
+ $path = $this->context->parentNode->getAttribute('base');
}
- /**
- * @return FileInfo
- */
- public function getCoveragePath() {
- $basedirDefault = dirname($this->context->ownerDocument->baseURI);
- $path = $basedirDefault . '/build/logs';
- if ($this->context->parentNode->hasAttribute('base')) {
- $path = $this->context->parentNode->getAttribute('base');
- }
- if ($path != '') { $path .= '/'; }
- $coverage = $this->context->queryOne('cfg:coverage');
- if ($coverage && $coverage->hasAttribute('path')) {
- $cfgPath = $coverage->getAttribute('path');
- if ($cfgPath[0] === '/') {
- $path = '';
- }
- $path .= $coverage->getAttribute('path');
- } else {
- $path .= 'coverage';
- }
- return new FileInfo($path);
+ if ($path != '') {
+ $path .= '/';
}
+ $coverage = $this->context->queryOne('cfg:coverage');
+
+ if ($coverage && $coverage->hasAttribute('path')) {
+ $cfgPath = $coverage->getAttribute('path');
- /**
- * @return FileInfo
- */
- public function getSourceDirectory() {
- return $this->generator->getProjectConfig()->getSourceDirectory();
+ if ($cfgPath[0] === '/') {
+ $path = '';
+ }
+ $path .= $coverage->getAttribute('path');
+ } else {
+ $path .= 'coverage';
}
+ return new FileInfo($path);
}
+ public function getSourceDirectory(): FileInfo {
+ return $this->generator->getProjectConfig()->getSourceDirectory();
+ }
}
diff -Nru phpdox-0.11.2/src/generator/enricher/phpunit/PHPUnit.php phpdox-0.12.0/src/generator/enricher/phpunit/PHPUnit.php
--- phpdox-0.11.2/src/generator/enricher/phpunit/PHPUnit.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/enricher/phpunit/PHPUnit.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,280 +1,278 @@
-coveragePath = $config->getCoveragePath();
- $this->sourceDirectory = $config->getSourceDirectory();
-
- $this->index = $this->loadXML('index.xml');
- }
-
- /**
- * @return string
- */
- public function getName() {
- return 'PHPUnit Coverage XML';
- }
-
- public function enrichEnd(PHPDoxEndEvent $event) {
- $index = $event->getIndex()->asDom();
- foreach($this->results as $namespace => $classes) {
- foreach($classes as $class => $results) {
- $classNode = $index->queryOne(
- sprintf('//phpdox:namespace[@name = "%s"]/phpdox:class[@name = "%s"]', $namespace, $class)
- );
- if (!$classNode) {
- continue;
- }
- /** @var fDOMElement $classNode */
- $container = $this->getEnrichtmentContainer($classNode, 'phpunit');
- $resultNode = $container->appendElementNS($this->namespaceURI, 'result');
- foreach($results as $key => $value) {
- $resultNode->setAttribute(mb_strtolower($key), $value);
- }
- $container->appendChild(
- $container->ownerDocument->importNode($this->coverage[$namespace][$class])
- );
- }
- }
- }
+use TheSeer\fDOM\fDOMDocument;
+use TheSeer\fDOM\fDOMElement;
+use TheSeer\fDOM\fDOMException;
+use TheSeer\phpDox\FileInfo;
+use TheSeer\phpDox\Generator\ClassStartEvent;
+use TheSeer\phpDox\Generator\PHPDoxEndEvent;
+use TheSeer\phpDox\Generator\TokenFileStartEvent;
+use TheSeer\phpDox\Generator\TraitStartEvent;
+
+class PHPUnit extends AbstractEnricher implements
+ EndEnricherInterface, ClassEnricherInterface, TraitEnricherInterface, TokenFileEnricherInterface {
+ public const XMLNS_HTTP = 'http://schema.phpunit.de/coverage/1.0';
+
+ public const XMLNS_HTTPS = 'https://schema.phpunit.de/coverage/1.0';
+
+ /**
+ * @var Fileinfo
+ */
+ private $coveragePath;
+
+ /**
+ * @var string
+ */
+ private $namespaceURI;
+
+ /**
+ * @var FileInfo
+ */
+ private $sourceDirectory;
+
+ /**
+ * @var fDOMDocument
+ */
+ private $index;
+
+ private $results = [];
+
+ private $coverage = [];
+
+ /**
+ * @throws EnricherException
+ */
+ public function __construct(PHPUnitConfig $config) {
+ $this->coveragePath = $config->getCoveragePath();
+ $this->sourceDirectory = $config->getSourceDirectory();
- public function enrichClass(ClassStartEvent $event) {
- $this->enrichByFile($event->getClass()->asDom());
- }
+ $this->index = $this->loadXML('index.xml');
+ }
- public function enrichTrait(TraitStartEvent $event) {
- $this->enrichByFile($event->getTrait()->asDom());
- }
+ public function getName(): string {
+ return 'PHPUnit Coverage XML';
+ }
- public function enrichTokenFile(TokenFileStartEvent $event) {
- try {
- $tokenDom = $event->getTokenFile()->asDom();
- $coverageDom = $this->loadCoverageInformation($tokenDom);
- $coverage = $coverageDom->queryOne('//pu:coverage[pu:line]');
- if ($coverage) {
- $container = $this->getEnrichtmentContainer($tokenDom->documentElement, 'phpunit');
- $container->appendChild($tokenDom->importNode($coverage, true));
+ public function enrichEnd(PHPDoxEndEvent $event): void {
+ $index = $event->getIndex()->asDom();
+
+ foreach ($this->results as $namespace => $classes) {
+ foreach ($classes as $class => $results) {
+ $classNode = $index->queryOne(
+ \sprintf('//phpdox:namespace[@name = "%s"]/phpdox:class[@name = "%s"]', $namespace, $class)
+ );
+
+ if (!$classNode) {
+ continue;
}
- } catch (PHPUnitEnricherException $e) {
- // Silently ignore for now
- }
+ /** @var fDOMElement $classNode */
+ $container = $this->getEnrichtmentContainer($classNode, 'phpunit');
+ $resultNode = $container->appendElementNS($this->namespaceURI, 'result');
+ foreach ($results as $key => $value) {
+ $resultNode->setAttribute(\mb_strtolower($key), $value);
+ }
+ $container->appendChild(
+ $container->ownerDocument->importNode($this->coverage[$namespace][$class])
+ );
+ }
}
+ }
- private function enrichByFile(fDOMDocument $dom) {
- try {
- $coverageDom = $this->loadCoverageInformation($dom);
- $this->processUnit($dom, $coverageDom);
- } catch (PHPUnitEnricherException $e) {
- // Silently ignore for now
+ public function enrichClass(ClassStartEvent $event): void {
+ $this->enrichByFile($event->getClass()->asDom());
+ }
+
+ public function enrichTrait(TraitStartEvent $event): void {
+ $this->enrichByFile($event->getTrait()->asDom());
+ }
+
+ public function enrichTokenFile(TokenFileStartEvent $event): void {
+ try {
+ $tokenDom = $event->getTokenFile()->asDom();
+ $coverageDom = $this->loadCoverageInformation($tokenDom);
+ $coverage = $coverageDom->queryOne('//pu:coverage[pu:line]');
+
+ if ($coverage) {
+ $container = $this->getEnrichtmentContainer($tokenDom->documentElement, 'phpunit');
+ $container->appendChild($tokenDom->importNode($coverage, true));
}
+ } catch (PHPUnitEnricherException $e) {
+ // Silently ignore for now
}
+ }
- /**
- * @param $fname
- *
- * @return fDOMDocument
- *
- * @throws EnricherException
- */
- private function loadXML($fname) {
- try {
- $fname = (string)$this->coveragePath . '/' . $fname;
- if (!file_exists($fname)) {
- throw new EnricherException(
- sprintf('PHPUnit coverage xml file "%s" not found.', $fname),
- EnricherException::LoadError
- );
- }
- $dom = new fDOMDocument();
- $dom->load($fname);
+ private function enrichByFile(fDOMDocument $dom): void {
+ try {
+ $coverageDom = $this->loadCoverageInformation($dom);
+ $this->processUnit($dom, $coverageDom);
+ } catch (PHPUnitEnricherException $e) {
+ // Silently ignore for now
+ }
+ }
- $this->namespaceURI = $dom->documentElement->namespaceURI;
+ /**
+ * @param $fname
+ *
+ * @throws EnricherException
+ */
+ private function loadXML($fname): fDOMDocument {
+ try {
+ $fname = (string)$this->coveragePath . '/' . $fname;
- if (!in_array($this->namespaceURI, [self::XMLNS_HTTP, self::XMLNS_HTTPS])) {
- throw new EnricherException(
- 'Wrong namspace - not a PHPUnit code coverage file',
- EnricherException::LoadError
- );
- }
+ if (!\file_exists($fname)) {
+ throw new EnricherException(
+ \sprintf('PHPUnit coverage xml file "%s" not found.', $fname),
+ EnricherException::LoadError
+ );
+ }
+ $dom = new fDOMDocument();
+ $dom->load($fname);
- $dom->registerNamespace('pu', $this->namespaceURI);
+ $this->namespaceURI = $dom->documentElement->namespaceURI;
- return $dom;
- } catch (fDOMException $e) {
+ if (!\in_array($this->namespaceURI, [self::XMLNS_HTTP, self::XMLNS_HTTPS])) {
throw new EnricherException(
- 'Parsing PHPUnit xml file failed: ' . $e->getMessage(),
+ 'Wrong namspace - not a PHPUnit code coverage file',
EnricherException::LoadError
);
}
+
+ $dom->registerNamespace('pu', $this->namespaceURI);
+
+ return $dom;
+ } catch (fDOMException $e) {
+ throw new EnricherException(
+ 'Parsing PHPUnit xml file failed: ' . $e->getMessage(),
+ EnricherException::LoadError
+ );
}
+ }
- private function processUnit(fDOMDocument $unit, fDOMDocument $coverage) {
- $enrichment = $this->getEnrichtmentContainer($unit->documentElement, 'phpunit');
+ private function processUnit(fDOMDocument $unit, fDOMDocument $coverage): void {
+ $enrichment = $this->getEnrichtmentContainer($unit->documentElement, 'phpunit');
- $className = $unit->documentElement->getAttribute('name');
- $classNamespace = $unit->documentElement->getAttribute('namespace');
+ $className = $unit->documentElement->getAttribute('name');
+ $classNamespace = $unit->documentElement->getAttribute('namespace');
- $classNode = $coverage->queryOne(
- sprintf('//pu:class[@name = "%2$s\%1$s" or (@name = "%1$s" and pu:namespace[@name = "%2$s"])]', $className, $classNamespace)
+ $classNode = $coverage->queryOne(
+ \sprintf('//pu:class[@name = "%2$s\%1$s" or (@name = "%1$s" and pu:namespace[@name = "%2$s"])]', $className, $classNamespace)
+ );
+
+ if (!$classNode) {
+ // This class seems to be newer than the last phpunit run
+ return;
+ }
+ $coverageTarget = $enrichment->appendElementNS($this->namespaceURI, 'coverage');
+
+ foreach (['executable', 'executed', 'crap'] as $attr) {
+ $coverageTarget->appendChild(
+ $coverageTarget->ownerDocument->importNode($classNode->getAttributeNode($attr))
);
+ }
- if (!$classNode) {
- // This class seems to be newer than the last phpunit run
- return;
- }
+ $result = [
+ 'UNKNOWN' => 0,
+ 'PASSED' => 0,
+ 'SKIPPED' => 0,
+ 'INCOMPLETE' => 0,
+ 'FAILURE' => 0,
+ 'ERROR' => 0,
+ 'RISKY' => 0,
+ 'WARNING' => 0
+ ];
+
+ $methods = $unit->query('/phpdox:*/phpdox:constructor|/phpdox:*/phpdox:destructor|/phpdox:*/phpdox:method');
+ $xp = $this->index->getDOMXPath();
+
+ foreach ($methods as $method) {
+ $start = $method->getAttribute('start');
+ $end = $method->getAttribute('end');
+
+ $enrichment = $this->getEnrichtmentContainer($method, 'phpunit');
$coverageTarget = $enrichment->appendElementNS($this->namespaceURI, 'coverage');
- foreach(array('executable','executed', 'crap') as $attr) {
- $coverageTarget->appendChild(
- $coverageTarget->ownerDocument->importNode($classNode->getAttributeNode($attr))
- );
- }
- $result = array(
- 'PASSED' => 0,
- 'SKIPPED' => 0,
- 'INCOMPLETE' => 0,
- 'FAILURE' => 0,
- 'ERROR' => 0,
- 'RISKY' => 0,
- 'WARNING' => 0
+ /** @var fDOMElement $coverageMethod */
+ $coverageMethod = $coverage->queryOne(
+ \sprintf('//pu:method[@start = "%d" and @end = "%d"]', $start, $end)
);
- $methods = $unit->query('/phpdox:*/phpdox:constructor|/phpdox:*/phpdox:destructor|/phpdox:*/phpdox:method');
- $xp = $this->index->getDOMXPath();
-
- foreach($methods as $method) {
- $start = $method->getAttribute('start');
- $end = $method->getAttribute('end');
-
- $enrichment = $this->getEnrichtmentContainer($method, 'phpunit');
- $coverageTarget = $enrichment->appendElementNS($this->namespaceURI, 'coverage');
-
- /** @var fDOMElement $coverageMethod */
- $coverageMethod = $coverage->queryOne(
- sprintf('//pu:method[@start = "%d" and @end = "%d"]', $start, $end)
- );
-
- if ($coverageMethod != NULL) {
- foreach(array('executable','executed','coverage', 'crap') as $attr) {
- $coverageTarget->appendChild(
- $coverageTarget->ownerDocument->importNode($coverageMethod->getAttributeNode($attr))
- );
- }
+ if ($coverageMethod != null) {
+ foreach (['executable', 'executed', 'coverage', 'crap'] as $attr) {
+ $coverageTarget->appendChild(
+ $coverageTarget->ownerDocument->importNode($coverageMethod->getAttributeNode($attr))
+ );
}
+ }
- $coveredNodes = $coverage->query(
- sprintf('//pu:coverage/pu:line[@nr >= "%d" and @nr <= "%d"]/pu:covered', $start, $end)
- );
+ $coveredNodes = $coverage->query(
+ \sprintf('//pu:coverage/pu:line[@nr >= "%d" and @nr <= "%d"]/pu:covered', $start, $end)
+ );
- $seen = array();
- foreach($coveredNodes as $coveredNode) {
- $by = $coveredNode->getAttribute('by');
- if (isset($seen[$by])) {
- continue;
- }
- $seen[$by] = true;
-
- $name = $xp->prepare(':name', array('name' => $by));
- $test = $coverageTarget->appendChild(
- $unit->importNode(
- $this->index->queryOne(
- sprintf('//pu:tests/pu:test[@name = %s]', $name)
- )
- )
- );
+ $seen = [];
- $result[$test->getAttribute('status')]++;
+ foreach ($coveredNodes as $coveredNode) {
+ $by = $coveredNode->getAttribute('by');
+ if (isset($seen[$by])) {
+ continue;
}
+ $seen[$by] = true;
- }
+ $name = $xp->prepare(':name', ['name' => $by]);
+ $test = $coverageTarget->appendChild(
+ $unit->importNode(
+ $this->index->queryOne(
+ \sprintf('//pu:tests/pu:test[@name = %s]', $name)
+ )
+ )
+ );
- if (!isset($this->results[$classNamespace])) {
- $this->results[$classNamespace] = array();
- $this->coverage[$classNamespace] = array();
+ $result[$test->getAttribute('status')]++;
}
- $this->results[$classNamespace][$className] = $result;
- $this->coverage[$classNamespace][$className] = $coverageTarget->cloneNode(false);
}
- /**
- * @param fDOMDocument $dom
- *
- * @return fDOMDocument
- *
- * @throws EnricherException
- * @throws PHPUnitEnricherException
- */
- private function loadCoverageInformation(fDOMDocument $dom) {
- $fileNode = $dom->queryOne('//phpdox:file');
- if (!$fileNode) {
- throw new PHPUnitEnricherException('No file header in event dom');
- }
+ if (!isset($this->results[$classNamespace])) {
+ $this->results[$classNamespace] = [];
+ $this->coverage[$classNamespace] = [];
+ }
+ $this->results[$classNamespace][$className] = $result;
+ $this->coverage[$classNamespace][$className] = $coverageTarget->cloneNode(false);
+ }
- $fileInfo = new FileInfo($fileNode->getAttribute('path'));
- $paths = explode('/', (string)$fileInfo->getRelative($this->sourceDirectory));
- $file = $fileNode->getAttribute('file');
- $paths = array_slice($paths, 1);
-
- $query = sprintf('//pu:project/pu:directory');
- foreach ($paths as $path) {
- $query .= sprintf('/pu:directory[@name = "%s"]', $path);
- }
- $query .= sprintf('/pu:file[@name = "%s"]', $file);
+ /**
+ * @throws EnricherException
+ * @throws PHPUnitEnricherException
+ */
+ private function loadCoverageInformation(fDOMDocument $dom): fDOMDocument {
+ $fileNode = $dom->queryOne('//phpdox:file');
- $phpunitFileNode = $this->index->queryOne($query);
- if (!$phpunitFileNode) {
- throw new PHPUnitEnricherException('No coverage information for file');
- }
+ if (!$fileNode) {
+ throw new PHPUnitEnricherException('No file header in event dom');
+ }
+
+ $fileInfo = new FileInfo($fileNode->getAttribute('path'));
+ $paths = \explode('/', (string)$fileInfo->getRelative($this->sourceDirectory));
+ $file = $fileNode->getAttribute('file');
+ $paths = \array_slice($paths, 1);
- return $this->loadXML($phpunitFileNode->getAttribute('href'));
+ $query = \sprintf('//pu:project/pu:directory');
+
+ foreach ($paths as $path) {
+ $query .= \sprintf('/pu:directory[@name = "%s"]', $path);
}
- }
+ $query .= \sprintf('/pu:file[@name = "%s"]', $file);
+ $phpunitFileNode = $this->index->queryOne($query);
- class PHPUnitEnricherException extends EnricherException {
+ if (!$phpunitFileNode) {
+ throw new PHPUnitEnricherException('No coverage information for file');
+ }
+
+ return $this->loadXML($phpunitFileNode->getAttribute('href'));
}
}
+
+class PHPUnitEnricherException extends EnricherException {
+}
diff -Nru phpdox-0.11.2/src/generator/enricher/pmd/PHPMessDetectorConfig.php phpdox-0.12.0/src/generator/enricher/pmd/PHPMessDetectorConfig.php
--- phpdox-0.11.2/src/generator/enricher/pmd/PHPMessDetectorConfig.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/enricher/pmd/PHPMessDetectorConfig.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,43 +1,44 @@
-context = $ctx;
+ $this->generator = $generator;
+ }
- /**
- * @var GeneratorConfig
- */
- private $generator;
+ public function getLogFilePath() {
+ $basedirDefault = \dirname($this->context->ownerDocument->baseURI);
+ $path = $basedirDefault . '/build/logs';
- /**
- * @var fDOMElement
- */
- private $context;
+ if ($this->context->parentNode->hasAttribute('base')) {
+ $path = $this->context->parentNode->getAttribute('base');
+ }
- public function __construct(GeneratorConfig $generator, fDOMElement $ctx) {
- $this->context = $ctx;
- $this->generator = $generator;
+ if ($path != '') {
+ $path .= '/';
}
+ $file = $this->context->queryOne('cfg:file');
- public function getLogFilePath() {
- $basedirDefault = dirname($this->context->ownerDocument->baseURI);
- $path = $basedirDefault . '/build/logs';
- if ($this->context->parentNode->hasAttribute('base')) {
- $path = $this->context->parentNode->getAttribute('base');
- }
- if ($path != '') { $path .= '/'; }
- $file = $this->context->queryOne('cfg:file');
- if ($file && $file->hasAttribute('name')) {
- $path .= $file->getAttribute('name');
- } else {
- $path .= 'pmd.xml';
- }
- return $path;
+ if ($file && $file->hasAttribute('name')) {
+ $path .= $file->getAttribute('name');
+ } else {
+ $path .= 'pmd.xml';
}
+ return $path;
}
-
}
diff -Nru phpdox-0.11.2/src/generator/enricher/pmd/PHPMessDetector.php phpdox-0.12.0/src/generator/enricher/pmd/PHPMessDetector.php
--- phpdox-0.11.2/src/generator/enricher/pmd/PHPMessDetector.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/enricher/pmd/PHPMessDetector.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,98 +1,95 @@
-config = $config;
+ $this->loadViolations($config->getLogFilePath());
+ }
- use TheSeer\fDOM\fDOMDocument;
- use TheSeer\fDOM\fDOMElement;
- use TheSeer\fDOM\fDOMException;
- use TheSeer\phpDox\FileInfo;
- use TheSeer\phpDox\Generator\AbstractUnitObject;
- use TheSeer\phpDox\Generator\ClassStartEvent;
- use TheSeer\phpDox\Generator\InterfaceStartEvent;
- use TheSeer\phpDox\Generator\TraitStartEvent;
-
- class PHPMessDetector extends AbstractEnricher implements ClassEnricherInterface, InterfaceEnricherInterface, TraitEnricherInterface {
-
- private $config;
- private $violations = NULL;
-
- public function __construct(PHPMessDetectorConfig $config) {
- $this->config = $config;
- $this->loadViolations($config->getLogFilePath());
- }
+ public function getName(): string {
+ return 'PHPMessDetector XML';
+ }
- /**
- * @return string
- */
- public function getName() {
- return 'PHPMessDetector XML';
- }
+ public function enrichClass(ClassStartEvent $event): void {
+ $this->enrichUnit($event->getClass());
+ }
- public function enrichClass(ClassStartEvent $event) {
- $this->enrichUnit($event->getClass());
- }
+ public function enrichInterface(InterfaceStartEvent $event): void {
+ $this->enrichUnit($event->getInterface());
+ }
- public function enrichInterface(InterfaceStartEvent $event) {
- $this->enrichUnit($event->getInterface());
- }
+ public function enrichTrait(TraitStartEvent $event): void {
+ $this->enrichUnit($event->getTrait());
+ }
- public function enrichTrait(TraitStartEvent $event) {
- $this->enrichUnit($event->getTrait());
- }
+ public function enrichUnit(AbstractUnitObject $ctx): void {
+ $file = $ctx->getSourceFile();
- public function enrichUnit(AbstractUnitObject $ctx) {
- $file = $ctx->getSourceFile();
- if (isset($this->violations[$file])) {
- $this->processViolations($ctx->asDom(), $this->violations[$file]);
- }
+ if (isset($this->violations[$file])) {
+ $this->processViolations($ctx->asDom(), $this->violations[$file]);
}
+ }
+
+ private function loadViolations($xmlFile): void {
+ $this->violations = [];
- private function loadViolations($xmlFile) {
- $this->violations = array();
- try {
- if (!file_exists($xmlFile)) {
- throw new EnricherException(
- sprintf('Logfile "%s" not found.', $xmlFile),
- EnricherException::LoadError
- );
- }
- $dom = new fDOMDocument();
- $dom->load($xmlFile);
- foreach($dom->query('/pmd/file') as $file) {
- $fileInfo = new FileInfo($file->getAttribute('name'));
- $this->violations[$fileInfo->getPathname()] = $file->query('*');
- }
- } catch (fDOMException $e) {
+ try {
+ if (!\file_exists($xmlFile)) {
throw new EnricherException(
- 'Parsing pmd logfile failed: ' . $e->getMessage(),
+ \sprintf('Logfile "%s" not found.', $xmlFile),
EnricherException::LoadError
);
}
+ $dom = new fDOMDocument();
+ $dom->load($xmlFile);
+ foreach ($dom->query('/pmd/file') as $file) {
+ $fileInfo = new FileInfo($file->getAttribute('name'));
+ $this->violations[$fileInfo->getPathname()] = $file->query('*');
+ }
+ } catch (fDOMException $e) {
+ throw new EnricherException(
+ 'Parsing pmd logfile failed: ' . $e->getMessage(),
+ EnricherException::LoadError
+ );
}
+ }
- private function processViolations(fDOMDocument $dom, \DOMNodeList $violations) {
- foreach($violations as $violation) {
- /** @var fDOMElement $violation */
- $line = $violation->getAttribute('beginline');
- $ref = $dom->queryOne(sprintf('//phpdox:*/*[@line = %d or (@start <= %d and @end >= %d)]', $line, $line, $line));
- if (!$ref) {
- // One src file may contain multiple classes/traits/interfaces, so the
- // finding might not apply to the current object since violations are based on filenames
- // but we have individual objects - so we just ignore the finding for this context
- continue;
- }
-
- $enrichment = $this->getEnrichtmentContainer($ref, 'pmd');
- $enrichViolation = $dom->createElementNS(self::XMLNS, 'violation');
- $enrichment->appendChild($enrichViolation);
- $enrichViolation->setAttribute('message', trim($violation->nodeValue));
- foreach($violation->attributes as $attr) {
- $enrichViolation->setAttributeNode($dom->importNode($attr, true));
- }
+ private function processViolations(fDOMDocument $dom, \DOMNodeList $violations): void {
+ foreach ($violations as $violation) {
+ /** @var fDOMElement $violation */
+ $line = $violation->getAttribute('beginline');
+ $ref = $dom->queryOne(\sprintf('//phpdox:*/*[@line = %d or (@start <= %d and @end >= %d)]', $line, $line, $line));
+
+ if (!$ref) {
+ // One src file may contain multiple classes/traits/interfaces, so the
+ // finding might not apply to the current object since violations are based on filenames
+ // but we have individual objects - so we just ignore the finding for this context
+ continue;
+ }
+
+ $enrichment = $this->getEnrichtmentContainer($ref, 'pmd');
+ $enrichViolation = $dom->createElementNS(self::XMLNS, 'violation');
+ $enrichment->appendChild($enrichViolation);
+ $enrichViolation->setAttribute('message', \trim($violation->nodeValue));
+ foreach ($violation->attributes as $attr) {
+ $enrichViolation->setAttributeNode($dom->importNode($attr, true));
}
- }
+ }
}
-
}
diff -Nru phpdox-0.11.2/src/generator/enricher/StartEnricherInterface.php phpdox-0.12.0/src/generator/enricher/StartEnricherInterface.php
--- phpdox-0.11.2/src/generator/enricher/StartEnricherInterface.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/enricher/StartEnricherInterface.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,12 +1,8 @@
-class = $class;
- }
-
- public function getClass() {
- return $this->class;
- }
-
- public function getNamespace() {
+ public function __construct($class) {
+ $this->class = $class;
+ }
- }
+ public function getClass() {
+ return $this->class;
}
+ public function getNamespace(): void {
+ }
}
diff -Nru phpdox-0.11.2/src/generator/events/ClassConstantEvent.php phpdox-0.12.0/src/generator/events/ClassConstantEvent.php
--- phpdox-0.11.2/src/generator/events/ClassConstantEvent.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/events/ClassConstantEvent.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,59 +1,19 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox\Generator {
+class = $class;
- }
-
- public function getClass() {
- return $this->class;
- }
-
- protected function getEventName() {
- return 'class.constant';
- }
+ public function __construct(ConstantObject $constant, ClassObject $class) {
+ parent::__construct($constant);
+ $this->class = $class;
+ }
+ public function getClass() {
+ return $this->class;
}
+ protected function getEventName() {
+ return 'class.constant';
+ }
}
diff -Nru phpdox-0.11.2/src/generator/events/ClassEndEvent.php phpdox-0.12.0/src/generator/events/ClassEndEvent.php
--- phpdox-0.11.2/src/generator/events/ClassEndEvent.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/events/ClassEndEvent.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,58 +1,18 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox\Generator {
+class = $class;
- }
-
- public function getClass() {
- return $this->class;
- }
-
- protected function getEventName() {
- return 'class.end';
- }
+ public function __construct(ClassObject $class) {
+ $this->class = $class;
+ }
+ public function getClass() {
+ return $this->class;
}
+ protected function getEventName() {
+ return 'class.end';
+ }
}
diff -Nru phpdox-0.11.2/src/generator/events/ClassMemberEvent.php phpdox-0.12.0/src/generator/events/ClassMemberEvent.php
--- phpdox-0.11.2/src/generator/events/ClassMemberEvent.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/events/ClassMemberEvent.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,59 +1,19 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox\Generator {
+class = $class;
- }
-
- public function getClass() {
- return $this->class;
- }
-
- protected function getEventName() {
- return 'class.member';
- }
+ public function __construct(MemberObject $member, ClassObject $class) {
+ parent::__construct($member);
+ $this->class = $class;
+ }
+ public function getClass() {
+ return $this->class;
}
+ protected function getEventName() {
+ return 'class.member';
+ }
}
diff -Nru phpdox-0.11.2/src/generator/events/ClassMethodEvent.php phpdox-0.12.0/src/generator/events/ClassMethodEvent.php
--- phpdox-0.11.2/src/generator/events/ClassMethodEvent.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/events/ClassMethodEvent.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,59 +1,19 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox\Generator {
+class = $class;
- }
-
- public function getClass() {
- return $this->class;
- }
-
- protected function getEventName() {
- return 'class.method';
- }
+ public function __construct(MethodObject $method, ClassObject $class) {
+ parent::__construct($method);
+ $this->class = $class;
+ }
+ public function getClass() {
+ return $this->class;
}
+ protected function getEventName() {
+ return 'class.method';
+ }
}
diff -Nru phpdox-0.11.2/src/generator/events/ClassStartEvent.php phpdox-0.12.0/src/generator/events/ClassStartEvent.php
--- phpdox-0.11.2/src/generator/events/ClassStartEvent.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/events/ClassStartEvent.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,58 +1,18 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox\Generator {
+class = $class;
- }
-
- public function getClass() {
- return $this->class;
- }
-
- protected function getEventName() {
- return 'class.start';
- }
+ public function __construct(ClassObject $class) {
+ $this->class = $class;
+ }
+ public function getClass() {
+ return $this->class;
}
+ protected function getEventName() {
+ return 'class.start';
+ }
}
diff -Nru phpdox-0.11.2/src/generator/events/ConstantEvent.php phpdox-0.12.0/src/generator/events/ConstantEvent.php
--- phpdox-0.11.2/src/generator/events/ConstantEvent.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/events/ConstantEvent.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,18 +1,14 @@
-constant = $constant;
- }
-
- public function getConstant() {
- return $this->constant;
- }
+abstract class ConstantEvent extends AbstractEvent {
+ private $constant;
+ public function __construct(ConstantObject $constant) {
+ $this->constant = $constant;
}
+ public function getConstant() {
+ return $this->constant;
+ }
}
diff -Nru phpdox-0.11.2/src/generator/events/InterfaceConstantEvent.php phpdox-0.12.0/src/generator/events/InterfaceConstantEvent.php
--- phpdox-0.11.2/src/generator/events/InterfaceConstantEvent.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/events/InterfaceConstantEvent.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,59 +1,19 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox\Generator {
+interface = $interface;
- }
-
- public function getInterface() {
- return $this->interface;
- }
-
- protected function getEventName() {
- return 'interface.constant';
- }
+ public function __construct(ConstantObject $constant, InterfaceObject $interface) {
+ parent::__construct($constant);
+ $this->interface = $interface;
+ }
+ public function getInterface() {
+ return $this->interface;
}
+ protected function getEventName() {
+ return 'interface.constant';
+ }
}
diff -Nru phpdox-0.11.2/src/generator/events/InterfaceEndEvent.php phpdox-0.12.0/src/generator/events/InterfaceEndEvent.php
--- phpdox-0.11.2/src/generator/events/InterfaceEndEvent.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/events/InterfaceEndEvent.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,58 +1,18 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox\Generator {
+interface = $interface;
- }
-
- public function getInterface() {
- return $this->interface;
- }
-
- protected function getEventName() {
- return 'interface.end';
- }
+ public function __construct(InterfaceObject $interface) {
+ $this->interface = $interface;
+ }
+ public function getInterface() {
+ return $this->interface;
}
+ protected function getEventName() {
+ return 'interface.end';
+ }
}
diff -Nru phpdox-0.11.2/src/generator/events/InterfaceMethodEvent.php phpdox-0.12.0/src/generator/events/InterfaceMethodEvent.php
--- phpdox-0.11.2/src/generator/events/InterfaceMethodEvent.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/events/InterfaceMethodEvent.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,59 +1,19 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox\Generator {
+interface = $interface;
- }
-
- public function getInterface() {
- return $this->interface;
- }
-
- protected function getEventName() {
- return 'interface.method';
- }
+ public function __construct(MethodObject $method, InterfaceObject $interface) {
+ parent::__construct($method);
+ $this->interface = $interface;
+ }
+ public function getInterface() {
+ return $this->interface;
}
+ protected function getEventName() {
+ return 'interface.method';
+ }
}
diff -Nru phpdox-0.11.2/src/generator/events/InterfaceStartEvent.php phpdox-0.12.0/src/generator/events/InterfaceStartEvent.php
--- phpdox-0.11.2/src/generator/events/InterfaceStartEvent.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/events/InterfaceStartEvent.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,58 +1,18 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox\Generator {
+interface = $interface;
- }
-
- public function getInterface() {
- return $this->interface;
- }
-
- protected function getEventName() {
- return 'interface.start';
- }
+ public function __construct(InterfaceObject $interface) {
+ $this->interface = $interface;
+ }
+ public function getInterface() {
+ return $this->interface;
}
+ protected function getEventName() {
+ return 'interface.start';
+ }
}
diff -Nru phpdox-0.11.2/src/generator/events/MemberEvent.php phpdox-0.12.0/src/generator/events/MemberEvent.php
--- phpdox-0.11.2/src/generator/events/MemberEvent.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/events/MemberEvent.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,18 +1,14 @@
-member = $member;
- }
-
- public function getMember() {
- return $this->member;
- }
+abstract class MemberEvent extends AbstractEvent {
+ private $member;
+ public function __construct(MemberObject $member) {
+ $this->member = $member;
}
+ public function getMember() {
+ return $this->member;
+ }
}
diff -Nru phpdox-0.11.2/src/generator/events/MethodEvent.php phpdox-0.12.0/src/generator/events/MethodEvent.php
--- phpdox-0.11.2/src/generator/events/MethodEvent.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/events/MethodEvent.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,18 +1,14 @@
-method = $method;
- }
-
- public function getMethod() {
- return $this->method;
- }
+abstract class MethodEvent extends AbstractEvent {
+ private $method;
+ public function __construct(MethodObject $method) {
+ $this->method = $method;
}
+ public function getMethod() {
+ return $this->method;
+ }
}
diff -Nru phpdox-0.11.2/src/generator/events/NamespaceClassesEndEvent.php phpdox-0.12.0/src/generator/events/NamespaceClassesEndEvent.php
--- phpdox-0.11.2/src/generator/events/NamespaceClassesEndEvent.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/events/NamespaceClassesEndEvent.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,64 +1,25 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox\Generator {
-
- class NamespaceClassesEndEvent extends AbstractEvent {
-
- private $classes;
- private $namespace;
-
- public function __construct(ClassCollection $classes, $namespace) {
- $this->classes = $classes;
- $this->namespace = $namespace;
- }
-
- public function getClasses() {
- return $this->classes;
- }
-
- public function getNamespace() {
- return $this->namespace;
- }
-
- protected function getEventName() {
- return 'namespace.classes.end';
- }
+classes = $classes;
+ $this->namespace = $namespace;
+ }
+
+ public function getClasses() {
+ return $this->classes;
}
+ public function getNamespace() {
+ return $this->namespace;
+ }
+
+ protected function getEventName() {
+ return 'namespace.classes.end';
+ }
}
diff -Nru phpdox-0.11.2/src/generator/events/NamespaceClassesStartEvent.php phpdox-0.12.0/src/generator/events/NamespaceClassesStartEvent.php
--- phpdox-0.11.2/src/generator/events/NamespaceClassesStartEvent.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/events/NamespaceClassesStartEvent.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,64 +1,25 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox\Generator {
-
- class NamespaceClassesStartEvent extends AbstractEvent {
-
- private $classes;
- private $namespace;
-
- public function __construct(ClassCollection $classes, $namespace) {
- $this->classes = $classes;
- $this->namespace = $namespace;
- }
-
- public function getClasses() {
- return $this->classes;
- }
-
- public function getNamespace() {
- return $this->namespace;
- }
-
- protected function getEventName() {
- return 'namespace.classes.start';
- }
+classes = $classes;
+ $this->namespace = $namespace;
+ }
+
+ public function getClasses() {
+ return $this->classes;
}
+ public function getNamespace() {
+ return $this->namespace;
+ }
+
+ protected function getEventName() {
+ return 'namespace.classes.start';
+ }
}
diff -Nru phpdox-0.11.2/src/generator/events/NamespaceEndEvent.php phpdox-0.12.0/src/generator/events/NamespaceEndEvent.php
--- phpdox-0.11.2/src/generator/events/NamespaceEndEvent.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/events/NamespaceEndEvent.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,58 +1,18 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox\Generator {
+namespace = $namespace;
- }
-
- public function getNamespace() {
- return $this->namespace;
- }
-
- protected function getEventName() {
- return 'namespace.end';
- }
+ public function __construct(NamespaceEntry $namespace) {
+ $this->namespace = $namespace;
+ }
+ public function getNamespace() {
+ return $this->namespace;
}
+ protected function getEventName() {
+ return 'namespace.end';
+ }
}
diff -Nru phpdox-0.11.2/src/generator/events/NamespaceInterfacesEndEvent.php phpdox-0.12.0/src/generator/events/NamespaceInterfacesEndEvent.php
--- phpdox-0.11.2/src/generator/events/NamespaceInterfacesEndEvent.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/events/NamespaceInterfacesEndEvent.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,64 +1,25 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox\Generator {
-
- class NamespaceInterfacesEndEvent extends AbstractEvent {
-
- private $interfaces;
- private $namespace;
-
- public function __construct(InterfaceCollection $interfaces, $namespace) {
- $this->interfaces = $interfaces;
- $this->namespace = $namespace;
- }
-
- public function getInterfaces() {
- return $this->interfaces;
- }
-
- public function getNamespace() {
- return $this->namespace;
- }
-
- protected function getEventName() {
- return 'namespace.interfaces.end';
- }
+interfaces = $interfaces;
+ $this->namespace = $namespace;
+ }
+
+ public function getInterfaces() {
+ return $this->interfaces;
}
+ public function getNamespace() {
+ return $this->namespace;
+ }
+
+ protected function getEventName() {
+ return 'namespace.interfaces.end';
+ }
}
diff -Nru phpdox-0.11.2/src/generator/events/NamespaceInterfacesStartEvent.php phpdox-0.12.0/src/generator/events/NamespaceInterfacesStartEvent.php
--- phpdox-0.11.2/src/generator/events/NamespaceInterfacesStartEvent.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/events/NamespaceInterfacesStartEvent.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,64 +1,25 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox\Generator {
-
- class NamespaceInterfacesStartEvent extends AbstractEvent {
-
- private $interfaces;
- private $namespace;
-
- public function __construct(InterfaceCollection $interfaces, $namespace) {
- $this->interfaces = $interfaces;
- $this->namespace = $namespace;
- }
-
- public function getInterfaces() {
- return $this->interfaces;
- }
-
- public function getNamespace() {
- return $this->namespace;
- }
-
- protected function getEventName() {
- return 'namespace.interfaces.start';
- }
+interfaces = $interfaces;
+ $this->namespace = $namespace;
+ }
+
+ public function getInterfaces() {
+ return $this->interfaces;
}
+ public function getNamespace() {
+ return $this->namespace;
+ }
+
+ protected function getEventName() {
+ return 'namespace.interfaces.start';
+ }
}
diff -Nru phpdox-0.11.2/src/generator/events/NamespaceStartEvent.php phpdox-0.12.0/src/generator/events/NamespaceStartEvent.php
--- phpdox-0.11.2/src/generator/events/NamespaceStartEvent.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/events/NamespaceStartEvent.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,58 +1,18 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox\Generator {
+namespace = $namespace;
- }
-
- public function getNamespace() {
- return $this->namespace;
- }
-
- protected function getEventName() {
- return 'namespace.start';
- }
+ public function __construct(NamespaceEntry $namespace) {
+ $this->namespace = $namespace;
+ }
+ public function getNamespace() {
+ return $this->namespace;
}
+ protected function getEventName() {
+ return 'namespace.start';
+ }
}
diff -Nru phpdox-0.11.2/src/generator/events/NamespaceTraitsEndEvent.php phpdox-0.12.0/src/generator/events/NamespaceTraitsEndEvent.php
--- phpdox-0.11.2/src/generator/events/NamespaceTraitsEndEvent.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/events/NamespaceTraitsEndEvent.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,64 +1,25 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox\Generator {
-
- class NamespaceTraitsEndEvent extends AbstractEvent {
-
- private $traits;
- private $namespace;
-
- public function __construct(TraitCollection $traits, $namespace) {
- $this->traits = $traits;
- $this->namespace = $namespace;
- }
-
- public function getTraits() {
- return $this->traits;
- }
-
- public function getNamespace() {
- return $this->namespace;
- }
-
- protected function getEventName() {
- return 'namespace.traits.end';
- }
+traits = $traits;
+ $this->namespace = $namespace;
+ }
+
+ public function getTraits() {
+ return $this->traits;
}
+ public function getNamespace() {
+ return $this->namespace;
+ }
+
+ protected function getEventName() {
+ return 'namespace.traits.end';
+ }
}
diff -Nru phpdox-0.11.2/src/generator/events/NamespaceTraitsStartEvent.php phpdox-0.12.0/src/generator/events/NamespaceTraitsStartEvent.php
--- phpdox-0.11.2/src/generator/events/NamespaceTraitsStartEvent.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/events/NamespaceTraitsStartEvent.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,64 +1,25 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox\Generator {
-
- class NamespaceTraitsStartEvent extends AbstractEvent {
-
- private $traits;
- private $namespace;
-
- public function __construct(TraitCollection $traits, $namespace) {
- $this->traits = $traits;
- $this->namespace = $namespace;
- }
-
- public function getTraits() {
- return $this->traits;
- }
-
- public function getNamespace() {
- return $this->namespace;
- }
-
- protected function getEventName() {
- return 'namespace.traits.start';
- }
+traits = $traits;
+ $this->namespace = $namespace;
+ }
+
+ public function getTraits() {
+ return $this->traits;
}
+ public function getNamespace() {
+ return $this->namespace;
+ }
+
+ protected function getEventName() {
+ return 'namespace.traits.start';
+ }
}
diff -Nru phpdox-0.11.2/src/generator/events/PHPDoxClassesEndEvent.php phpdox-0.12.0/src/generator/events/PHPDoxClassesEndEvent.php
--- phpdox-0.11.2/src/generator/events/PHPDoxClassesEndEvent.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/events/PHPDoxClassesEndEvent.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,58 +1,18 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox\Generator {
+classes = $classes;
- }
-
- public function getClasses() {
- return $this->classes;
- }
-
- protected function getEventName() {
- return 'phpdox.classes.end';
- }
+ public function __construct(ClassCollection $classes) {
+ $this->classes = $classes;
+ }
+ public function getClasses() {
+ return $this->classes;
}
+ protected function getEventName() {
+ return 'phpdox.classes.end';
+ }
}
diff -Nru phpdox-0.11.2/src/generator/events/PHPDoxClassesStartEvent.php phpdox-0.12.0/src/generator/events/PHPDoxClassesStartEvent.php
--- phpdox-0.11.2/src/generator/events/PHPDoxClassesStartEvent.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/events/PHPDoxClassesStartEvent.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,58 +1,18 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox\Generator {
+classes = $classes;
- }
-
- public function getClasses() {
- return $this->classes;
- }
-
- protected function getEventName() {
- return 'phpdox.classes.start';
- }
+ public function __construct(ClassCollection $classes) {
+ $this->classes = $classes;
+ }
+ public function getClasses() {
+ return $this->classes;
}
+ protected function getEventName() {
+ return 'phpdox.classes.start';
+ }
}
diff -Nru phpdox-0.11.2/src/generator/events/PHPDoxEndEvent.php phpdox-0.12.0/src/generator/events/PHPDoxEndEvent.php
--- phpdox-0.11.2/src/generator/events/PHPDoxEndEvent.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/events/PHPDoxEndEvent.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,64 +1,25 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox\Generator {
-
- class PHPDoxEndEvent extends AbstractEvent {
-
- private $index;
- private $tree;
-
- public function __construct(Index $index, SourceTree $tree) {
- $this->index = $index;
- $this->tree = $tree;
- }
-
- public function getIndex() {
- return $this->index;
- }
-
- public function getTree() {
- return $this->tree;
- }
-
- protected function getEventName() {
- return 'phpdox.end';
- }
+index = $index;
+ $this->tree = $tree;
+ }
+
+ public function getIndex() {
+ return $this->index;
}
+ public function getTree() {
+ return $this->tree;
+ }
+
+ protected function getEventName() {
+ return 'phpdox.end';
+ }
}
diff -Nru phpdox-0.11.2/src/generator/events/PHPDoxInterfacesEndEvent.php phpdox-0.12.0/src/generator/events/PHPDoxInterfacesEndEvent.php
--- phpdox-0.11.2/src/generator/events/PHPDoxInterfacesEndEvent.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/events/PHPDoxInterfacesEndEvent.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,58 +1,18 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox\Generator {
+interfaces = $interfaces;
- }
-
- public function getInterfaces() {
- return $this->interfaces;
- }
-
- protected function getEventName() {
- return 'phpdox.interfaces.end';
- }
+ public function __construct(InterfaceCollection $interfaces) {
+ $this->interfaces = $interfaces;
+ }
+ public function getInterfaces() {
+ return $this->interfaces;
}
+ protected function getEventName() {
+ return 'phpdox.interfaces.end';
+ }
}
diff -Nru phpdox-0.11.2/src/generator/events/PHPDoxInterfacesStartEvent.php phpdox-0.12.0/src/generator/events/PHPDoxInterfacesStartEvent.php
--- phpdox-0.11.2/src/generator/events/PHPDoxInterfacesStartEvent.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/events/PHPDoxInterfacesStartEvent.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,58 +1,18 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox\Generator {
+interfaces = $interfaces;
- }
-
- public function getInterfaces() {
- return $this->interfaces;
- }
-
- protected function getEventName() {
- return 'phpdox.interfaces.start';
- }
+ public function __construct(InterfaceCollection $interfaces) {
+ $this->interfaces = $interfaces;
+ }
+ public function getInterfaces() {
+ return $this->interfaces;
}
+ protected function getEventName() {
+ return 'phpdox.interfaces.start';
+ }
}
diff -Nru phpdox-0.11.2/src/generator/events/PHPDoxNamespacesEndEvent.php phpdox-0.12.0/src/generator/events/PHPDoxNamespacesEndEvent.php
--- phpdox-0.11.2/src/generator/events/PHPDoxNamespacesEndEvent.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/events/PHPDoxNamespacesEndEvent.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,58 +1,18 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox\Generator {
+namespaces = $namespaces;
- }
-
- public function getNamespaces() {
- return $this->namespaces;
- }
-
- protected function getEventName() {
- return 'phpdox.namespaces.end';
- }
+ public function __construct(NamespaceCollection $namespaces) {
+ $this->namespaces = $namespaces;
+ }
+ public function getNamespaces() {
+ return $this->namespaces;
}
+ protected function getEventName() {
+ return 'phpdox.namespaces.end';
+ }
}
diff -Nru phpdox-0.11.2/src/generator/events/PHPDoxNamespacesStartEvent.php phpdox-0.12.0/src/generator/events/PHPDoxNamespacesStartEvent.php
--- phpdox-0.11.2/src/generator/events/PHPDoxNamespacesStartEvent.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/events/PHPDoxNamespacesStartEvent.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,58 +1,18 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox\Generator {
+namespaces = $namespaces;
- }
-
- public function getNamespaces() {
- return $this->namespaces;
- }
-
- protected function getEventName() {
- return 'phpdox.namespaces.start';
- }
+ public function __construct(NamespaceCollection $namespaces) {
+ $this->namespaces = $namespaces;
+ }
+ public function getNamespaces() {
+ return $this->namespaces;
}
+ protected function getEventName() {
+ return 'phpdox.namespaces.start';
+ }
}
diff -Nru phpdox-0.11.2/src/generator/events/PHPDoxStartEvent.php phpdox-0.12.0/src/generator/events/PHPDoxStartEvent.php
--- phpdox-0.11.2/src/generator/events/PHPDoxStartEvent.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/events/PHPDoxStartEvent.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,64 +1,25 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox\Generator {
-
- class PHPDoxStartEvent extends AbstractEvent {
-
- private $index;
- private $tree;
-
- public function __construct(Index $index, SourceTree $tree) {
- $this->index = $index;
- $this->tree = $tree;
- }
-
- public function getIndex() {
- return $this->index;
- }
-
- public function getTree() {
- return $this->tree;
- }
-
- protected function getEventName() {
- return 'phpdox.start';
- }
+index = $index;
+ $this->tree = $tree;
+ }
+
+ public function getIndex() {
+ return $this->index;
}
+ public function getTree() {
+ return $this->tree;
+ }
+
+ protected function getEventName() {
+ return 'phpdox.start';
+ }
}
diff -Nru phpdox-0.11.2/src/generator/events/PHPDoxTraitsEndEvent.php phpdox-0.12.0/src/generator/events/PHPDoxTraitsEndEvent.php
--- phpdox-0.11.2/src/generator/events/PHPDoxTraitsEndEvent.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/events/PHPDoxTraitsEndEvent.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,58 +1,18 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox\Generator {
+traits = $traits;
- }
-
- public function getTraits() {
- return $this->traits;
- }
-
- protected function getEventName() {
- return 'phpdox.traits.end';
- }
+ public function __construct(TraitCollection $traits) {
+ $this->traits = $traits;
+ }
+ public function getTraits() {
+ return $this->traits;
}
+ protected function getEventName() {
+ return 'phpdox.traits.end';
+ }
}
diff -Nru phpdox-0.11.2/src/generator/events/PHPDoxTraitsStartEvent.php phpdox-0.12.0/src/generator/events/PHPDoxTraitsStartEvent.php
--- phpdox-0.11.2/src/generator/events/PHPDoxTraitsStartEvent.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/events/PHPDoxTraitsStartEvent.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,58 +1,18 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox\Generator {
+traits = $traits;
- }
-
- public function getTraits() {
- return $this->traits;
- }
-
- protected function getEventName() {
- return 'phpdox.traits.start';
- }
+ public function __construct(TraitCollection $traits) {
+ $this->traits = $traits;
+ }
+ public function getTraits() {
+ return $this->traits;
}
+ protected function getEventName() {
+ return 'phpdox.traits.start';
+ }
}
diff -Nru phpdox-0.11.2/src/generator/events/TokenEvent.php phpdox-0.12.0/src/generator/events/TokenEvent.php
--- phpdox-0.11.2/src/generator/events/TokenEvent.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/events/TokenEvent.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,47 +1,8 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox\Generator {
-
- class TokenEvent extends AbstractEvent {
- protected function getEventName() {
- return 'token';
- }
+
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox\Generator {
-
- class TokenFileEndEvent extends AbstractEvent {
-
- protected function getEventName() {
- return 'token.line.end';
- }
+tokenFile = $tokenFile;
- }
-
- /**
- * @return TokenFile
- */
- public function getTokenFile() {
- return $this->tokenFile;
- }
-
- protected function getEventName() {
- return 'token.file.start';
- }
+ public function __construct(TokenFile $tokenFile) {
+ $this->tokenFile = $tokenFile;
+ }
+ public function getTokenFile(): TokenFile {
+ return $this->tokenFile;
}
+ protected function getEventName() {
+ return 'token.file.start';
+ }
}
diff -Nru phpdox-0.11.2/src/generator/events/TokenLineEndEvent.php phpdox-0.12.0/src/generator/events/TokenLineEndEvent.php
--- phpdox-0.11.2/src/generator/events/TokenLineEndEvent.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/events/TokenLineEndEvent.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,48 +1,8 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-
-namespace TheSeer\phpDox\Generator {
-
- class TokenLineEndEvent extends AbstractEvent {
- protected function getEventName() {
- return 'token.line.end';
- }
+
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-
-namespace TheSeer\phpDox\Generator {
-
- class TokenLineStartEvent extends AbstractEvent {
-
- protected function getEventName() {
- return 'token.line.start';
- }
+
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox\Generator {
+trait = $trait;
- }
-
- public function getTrait() {
- return $this->trait;
- }
-
- protected function getEventName() {
- return 'trait.constant';
- }
+ public function __construct(ConstantObject $constant, TraitObject $trait) {
+ parent::__construct($constant);
+ $this->trait = $trait;
+ }
+ public function getTrait() {
+ return $this->trait;
}
+ protected function getEventName() {
+ return 'trait.constant';
+ }
}
diff -Nru phpdox-0.11.2/src/generator/events/TraitEndEvent.php phpdox-0.12.0/src/generator/events/TraitEndEvent.php
--- phpdox-0.11.2/src/generator/events/TraitEndEvent.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/events/TraitEndEvent.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,58 +1,18 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox\Generator {
+trait = $trait;
- }
-
- public function getTrait() {
- return $this->trait;
- }
-
- protected function getEventName() {
- return 'trait.end';
- }
+ public function __construct(TraitObject $trait) {
+ $this->trait = $trait;
+ }
+ public function getTrait() {
+ return $this->trait;
}
+ protected function getEventName() {
+ return 'trait.end';
+ }
}
diff -Nru phpdox-0.11.2/src/generator/events/TraitMemberEvent.php phpdox-0.12.0/src/generator/events/TraitMemberEvent.php
--- phpdox-0.11.2/src/generator/events/TraitMemberEvent.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/events/TraitMemberEvent.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,59 +1,19 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox\Generator {
+trait = $trait;
- }
-
- public function getTrait() {
- return $this->trait;
- }
-
- protected function getEventName() {
- return 'trait.member';
- }
+ public function __construct(MemberObject $member, TraitObject $trait) {
+ parent::__construct($member);
+ $this->trait = $trait;
+ }
+ public function getTrait() {
+ return $this->trait;
}
+ protected function getEventName() {
+ return 'trait.member';
+ }
}
diff -Nru phpdox-0.11.2/src/generator/events/TraitMethodEvent.php phpdox-0.12.0/src/generator/events/TraitMethodEvent.php
--- phpdox-0.11.2/src/generator/events/TraitMethodEvent.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/events/TraitMethodEvent.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,59 +1,19 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox\Generator {
+trait = $trait;
- }
-
- public function getTrait() {
- return $this->trait;
- }
-
- protected function getEventName() {
- return 'trait.method';
- }
+ public function __construct(MethodObject $method, TraitObject $trait) {
+ parent::__construct($method);
+ $this->trait = $trait;
+ }
+ public function getTrait() {
+ return $this->trait;
}
+ protected function getEventName() {
+ return 'trait.method';
+ }
}
diff -Nru phpdox-0.11.2/src/generator/events/TraitStartEvent.php phpdox-0.12.0/src/generator/events/TraitStartEvent.php
--- phpdox-0.11.2/src/generator/events/TraitStartEvent.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/events/TraitStartEvent.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,58 +1,18 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- *
- */
-namespace TheSeer\phpDox\Generator {
+trait = $trait;
- }
-
- public function getTrait() {
- return $this->trait;
- }
-
- protected function getEventName() {
- return 'trait.start';
- }
+ public function __construct(TraitObject $trait) {
+ $this->trait = $trait;
+ }
+ public function getTrait() {
+ return $this->trait;
}
+ protected function getEventName() {
+ return 'trait.start';
+ }
}
diff -Nru phpdox-0.11.2/src/generator/Generator.php phpdox-0.12.0/src/generator/Generator.php
--- phpdox-0.11.2/src/generator/Generator.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/Generator.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,335 +1,298 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
-namespace TheSeer\phpDox\Generator {
-
- use TheSeer\phpDox\Generator\Engine\EngineInterface;
- use TheSeer\phpDox\Generator\Engine\EventHandlerRegistry;
- use TheSeer\phpDox\Generator\Enricher\ClassEnricherInterface;
- use TheSeer\phpDox\Generator\Enricher\EndEnricherInterface;
- use TheSeer\phpDox\Generator\Enricher\EnricherInterface;
- use TheSeer\phpDox\Generator\Enricher\StartEnricherInterface;
- use TheSeer\phpDox\Generator\Enricher\InterfaceEnricherInterface;
- use TheSeer\phpDox\Generator\Enricher\TokenFileEnricherInterface;
- use TheSeer\phpDox\Generator\Enricher\TraitEnricherInterface;
- use TheSeer\phpDox\ProgressLogger;
-
- class Generator {
-
- /**
- * @var ProgressLogger
- */
- private $logger;
-
- /**
- * @var array
- */
- private $enrichers = array(
- 'phpdox.start' => array(),
- 'class.start' => array(),
- 'trait.start' => array(),
- 'interface.start' => array(),
- 'token.file.start' => array(),
- 'phpdox.end' => array()
- );
-
- /**
- * @var string
- */
- private $xmlDir;
-
- /**
- * @var Project
- */
- private $project;
-
- /**
- * Map of events with engines
- *
- * @var EventHandlerRegistry
- */
- private $handlerRegistry;
-
- /**
- * @param ProgressLogger $logger
- * @param EventHandlerRegistry $registry
- */
- public function __construct(ProgressLogger $logger, EventHandlerRegistry $registry) {
- $this->logger = $logger;
- $this->handlerRegistry = $registry;
- }
-
- /**
- * @param EngineInterface $engine
- *
- * @throws
- * @throws GeneratorException
- */
- public function addEngine(EngineInterface $engine) {
- $engine->registerEventHandlers($this->handlerRegistry);
- }
-
- public function addEnricher(EnricherInterface $enricher) {
- if ($enricher instanceof StartEnricherInterface) {
- $this->enrichers['phpdox.start'][] = $enricher;
- }
- if ($enricher instanceof ClassEnricherInterface) {
- $this->enrichers['class.start'][] = $enricher;
- }
- if ($enricher instanceof InterfaceEnricherInterface) {
- $this->enrichers['interface.start'][] = $enricher;
- }
- if ($enricher instanceof TraitEnricherInterface) {
- $this->enrichers['trait.start'][] = $enricher;
- }
- if ($enricher instanceof TokenFileEnricherInterface) {
- $this->enrichers['token.file.start'][] = $enricher;
- }
- if ($enricher instanceof EndEnricherInterface) {
- $this->enrichers['phpdox.end'][] = $enricher;
- }
+ [],
+ 'class.start' => [],
+ 'trait.start' => [],
+ 'interface.start' => [],
+ 'token.file.start' => [],
+ 'phpdox.end' => []
+ ];
+
+ /**
+ * @var string
+ */
+ private $xmlDir;
+
+ /**
+ * @var Project
+ */
+ private $project;
+
+ /**
+ * Map of events with engines
+ *
+ * @var EventHandlerRegistry
+ */
+ private $handlerRegistry;
+
+ public function __construct(ProgressLogger $logger, EventHandlerRegistry $registry) {
+ $this->logger = $logger;
+ $this->handlerRegistry = $registry;
+ }
+
+ /**
+ * @throws
+ * @throws GeneratorException
+ */
+ public function addEngine(EngineInterface $engine): void {
+ $engine->registerEventHandlers($this->handlerRegistry);
+ }
+
+ public function addEnricher(EnricherInterface $enricher): void {
+ if ($enricher instanceof StartEnricherInterface) {
+ $this->enrichers['phpdox.start'][] = $enricher;
}
- /**
- * @param Project $project
- * @param bool $publicOnly
- */
- public function run(Project $project) {
- $this->xmlDir = $project->getXmlDir();
- $this->project = $project;
-
- $this->handleEvent(new PHPDoxStartEvent($project->getIndex(), $project->getSourceTree()));
- if ($this->project->hasNamespaces()) {
- $this->processWithNamespace();
- } else {
- $this->processGlobalOnly();
- }
- $this->processTokenFiles($project->getSourceTree());
- $this->handleEvent(new PHPDoxEndEvent($project->getIndex(), $project->getSourceTree()));
- $this->logger->completed();
+ if ($enricher instanceof ClassEnricherInterface) {
+ $this->enrichers['class.start'][] = $enricher;
+ }
+
+ if ($enricher instanceof InterfaceEnricherInterface) {
+ $this->enrichers['interface.start'][] = $enricher;
+ }
+ if ($enricher instanceof TraitEnricherInterface) {
+ $this->enrichers['trait.start'][] = $enricher;
}
- private function processTokenFiles(SourceTree $sourceTree) {
- foreach($sourceTree as $tokenFile) {
- $this->handleEvent(new TokenFileStartEvent($tokenFile));
- foreach($tokenFile as $sourceLine) {
- $this->handleEvent(new TokenLineStartEvent($tokenFile, $sourceLine));
- foreach($sourceLine as $token) {
- $this->handleEvent(new TokenEvent($sourceLine, $token));
- }
- $this->handleEvent(new TokenLineEndEvent($tokenFile, $sourceLine));
+ if ($enricher instanceof TokenFileEnricherInterface) {
+ $this->enrichers['token.file.start'][] = $enricher;
+ }
+
+ if ($enricher instanceof EndEnricherInterface) {
+ $this->enrichers['phpdox.end'][] = $enricher;
+ }
+ }
+
+ public function run(Project $project): void {
+ $this->xmlDir = $project->getXmlDir();
+ $this->project = $project;
+
+ $this->handleEvent(new PHPDoxStartEvent($project->getIndex(), $project->getSourceTree()));
+
+ if ($this->project->hasNamespaces()) {
+ $this->processWithNamespace();
+ } else {
+ $this->processGlobalOnly();
+ }
+ $this->processTokenFiles($project->getSourceTree());
+ $this->handleEvent(new PHPDoxEndEvent($project->getIndex(), $project->getSourceTree()));
+ $this->logger->completed();
+ }
+
+ private function processTokenFiles(SourceTree $sourceTree): void {
+ foreach ($sourceTree as $tokenFile) {
+ $this->handleEvent(new TokenFileStartEvent($tokenFile));
+
+ foreach ($tokenFile as $sourceLine) {
+ $this->handleEvent(new TokenLineStartEvent($tokenFile, $sourceLine));
+
+ foreach ($sourceLine as $token) {
+ $this->handleEvent(new TokenEvent($sourceLine, $token));
}
- $this->handleEvent(new TokenFileEndEvent($tokenFile));
+ $this->handleEvent(new TokenLineEndEvent($tokenFile, $sourceLine));
}
+ $this->handleEvent(new TokenFileEndEvent($tokenFile));
}
+ }
- /**
- * @param AbstractEvent $event
- * @param bool $progress
- */
- private function handleEvent(AbstractEvent $event, $progress = TRUE) {
- $eventType = $event->getType();
- if (isset($this->enrichers[$eventType])) {
- foreach($this->enrichers[$eventType] as $enricher) {
- switch($eventType) {
- case 'phpdox.start': {
+ /**
+ * @param bool $progress
+ */
+ private function handleEvent(AbstractEvent $event, $progress = true): void {
+ $eventType = $event->getType();
+
+ if (isset($this->enrichers[$eventType])) {
+ foreach ($this->enrichers[$eventType] as $enricher) {
+ switch ($eventType) {
+ case 'phpdox.start':
+ {
$enricher->enrichStart($event);
+
break;
}
- case 'class.start': {
+ case 'class.start':
+ {
$enricher->enrichClass($event);
+
break;
}
- case 'interface.start': {
+ case 'interface.start':
+ {
$enricher->enrichInterface($event);
+
break;
}
- case 'trait.start': {
+ case 'trait.start':
+ {
$enricher->enrichTrait($event);
+
break;
}
- case 'token.file.start': {
+ case 'token.file.start':
+ {
$enricher->enrichTokenFile($event);
+
break;
}
- case 'phpdox.end': {
+ case 'phpdox.end':
+ {
$enricher->enrichEnd($event);
+
break;
}
- }
}
}
- foreach($this->handlerRegistry->getHandlersForEvent($event->getType()) as $callback) {
- call_user_func($callback, $event);
- }
- if ($progress) {
- $this->logger->progress('processed');
- }
- }
+ }
- /**
- *
- */
- private function processGlobalOnly() {
- $classes = $this->project->getClasses();
- $this->handleEvent(new PHPDoxClassesStartEvent($classes));
- foreach($classes as $class) {
- $this->processClass($class);
- }
- $this->handleEvent(new PHPDoxClassesEndEvent($classes));
+ foreach ($this->handlerRegistry->getHandlersForEvent($event->getType()) as $callback) {
+ \call_user_func($callback, $event);
+ }
- $traits = $this->project->getTraits();
- $this->handleEvent(new PHPDoxTraitsStartEvent($traits));
- foreach($traits as $trait) {
- $this->processTrait($trait);
- }
- $this->handleEvent(new PHPDoxTraitsEndEvent($traits));
+ if ($progress) {
+ $this->logger->progress('processed');
+ }
+ }
- $interfaces = $this->project->getInterfaces();
- $this->handleEvent(new PHPDoxInterfacesStartEvent($interfaces));
- foreach($interfaces as $interface) {
- $this->processInterface($interface);
- }
- $this->handleEvent(new PHPDoxInterfacesEndEvent($interfaces));
+ private function processGlobalOnly(): void {
+ $classes = $this->project->getClasses();
+ $this->handleEvent(new PHPDoxClassesStartEvent($classes));
+
+ foreach ($classes as $class) {
+ $this->processClass($class);
}
+ $this->handleEvent(new PHPDoxClassesEndEvent($classes));
- /**
- *
- */
- private function processWithNamespace() {
- $namespaces = $this->project->getNamespaces();
- $this->handleEvent(new PHPDoxNamespacesStartEvent($namespaces));
-
- foreach($namespaces as $namespace) {
- $this->handleEvent(new NamespaceStartEvent($namespace));
-
- $classes = $namespace->getClasses();
- $this->handleEvent(new NamespaceClassesStartEvent($classes, $namespace));
- foreach($classes as $class) {
- $this->processClass($class);
- }
- $this->handleEvent(new NamespaceClassesEndEvent($classes, $namespace));
+ $traits = $this->project->getTraits();
+ $this->handleEvent(new PHPDoxTraitsStartEvent($traits));
- $traits = $namespace->getTraits();
- $this->handleEvent(new NamespaceTraitsStartEvent($traits, $namespace));
- foreach($traits as $trait) {
- $this->processTrait($trait);
- }
- $this->handleEvent(new NamespaceTraitsEndEvent($traits, $namespace));
+ foreach ($traits as $trait) {
+ $this->processTrait($trait);
+ }
+ $this->handleEvent(new PHPDoxTraitsEndEvent($traits));
- $interfaces = $namespace->getInterfaces();
- $this->handleEvent(new NamespaceInterfacesStartEvent($interfaces, $namespace));
- foreach($interfaces as $interface) {
- $this->processInterface($interface);
- }
- $this->handleEvent(new NamespaceInterfacesEndEvent($interfaces, $namespace));
+ $interfaces = $this->project->getInterfaces();
+ $this->handleEvent(new PHPDoxInterfacesStartEvent($interfaces));
- $this->handleEvent(new NamespaceEndEvent($namespace));
- }
- $this->handleEvent(new PHPDoxNamespacesEndEvent($namespaces));
+ foreach ($interfaces as $interface) {
+ $this->processInterface($interface);
}
+ $this->handleEvent(new PHPDoxInterfacesEndEvent($interfaces));
+ }
+
+ private function processWithNamespace(): void {
+ $namespaces = $this->project->getNamespaces();
+ $this->handleEvent(new PHPDoxNamespacesStartEvent($namespaces));
+
+ foreach ($namespaces as $namespace) {
+ $this->handleEvent(new NamespaceStartEvent($namespace));
- /**
- * @param $class ClassEntry
- */
- private function processClass(ClassEntry $entry) {
- $class = $entry->getClassObject($this->xmlDir);
- $this->handleEvent(new ClassStartEvent($class));
+ $classes = $namespace->getClasses();
+ $this->handleEvent(new NamespaceClassesStartEvent($classes, $namespace));
- foreach($class->getConstants() as $constant) {
- $this->handleEvent(new ClassConstantEvent($constant, $class));
+ foreach ($classes as $class) {
+ $this->processClass($class);
}
+ $this->handleEvent(new NamespaceClassesEndEvent($classes, $namespace));
+
+ $traits = $namespace->getTraits();
+ $this->handleEvent(new NamespaceTraitsStartEvent($traits, $namespace));
- foreach($class->getMembers() as $member) {
- $this->handleEvent(new ClassMemberEvent($member, $class));
+ foreach ($traits as $trait) {
+ $this->processTrait($trait);
}
+ $this->handleEvent(new NamespaceTraitsEndEvent($traits, $namespace));
- foreach($class->getMethods() as $method) {
- $this->handleEvent(new ClassMethodEvent($method, $class));
+ $interfaces = $namespace->getInterfaces();
+ $this->handleEvent(new NamespaceInterfacesStartEvent($interfaces, $namespace));
+
+ foreach ($interfaces as $interface) {
+ $this->processInterface($interface);
}
- $this->handleEvent(new ClassEndEvent($class));
+ $this->handleEvent(new NamespaceInterfacesEndEvent($interfaces, $namespace));
+ $this->handleEvent(new NamespaceEndEvent($namespace));
}
+ $this->handleEvent(new PHPDoxNamespacesEndEvent($namespaces));
+ }
- /**
- * @param TraitEntry $traitEntry
- */
- private function processTrait(TraitEntry $traitEntry) {
- $trait = $traitEntry->getTraitObject($this->xmlDir);
- $this->handleEvent(new TraitStartEvent($trait));
+ private function processClass(ClassEntry $entry): void {
+ $class = $entry->getClassObject($this->xmlDir);
+ $this->handleEvent(new ClassStartEvent($class));
- foreach($trait->getConstants() as $constant) {
- $this->handleEvent(new TraitConstantEvent($constant, $trait));
- }
+ foreach ($class->getConstants() as $constant) {
+ $this->handleEvent(new ClassConstantEvent($constant, $class));
+ }
- foreach($trait->getMembers() as $member) {
- $this->handleEvent(new TraitMemberEvent($member, $trait));
- }
+ foreach ($class->getMembers() as $member) {
+ $this->handleEvent(new ClassMemberEvent($member, $class));
+ }
- foreach($trait->getMethods() as $method) {
- $this->handleEvent(new TraitMethodEvent($method, $trait));
- }
- $this->handleEvent(new TraitEndEvent($trait));
+ foreach ($class->getMethods() as $method) {
+ $this->handleEvent(new ClassMethodEvent($method, $class));
}
+ $this->handleEvent(new ClassEndEvent($class));
+ }
- /**
- * @param InterfaceEntry $interface
- */
- private function processInterface(InterfaceEntry $interfaceEntry) {
- $interface = $interfaceEntry->getInterfaceObject($this->xmlDir);
+ private function processTrait(TraitEntry $traitEntry): void {
+ $trait = $traitEntry->getTraitObject($this->xmlDir);
+ $this->handleEvent(new TraitStartEvent($trait));
- $this->handleEvent(new InterfaceStartEvent($interface));
+ foreach ($trait->getConstants() as $constant) {
+ $this->handleEvent(new TraitConstantEvent($constant, $trait));
+ }
- foreach($interface->getConstants() as $constant) {
- $this->handleEvent(new InterfaceConstantEvent($constant, $interface));
- }
+ foreach ($trait->getMembers() as $member) {
+ $this->handleEvent(new TraitMemberEvent($member, $trait));
+ }
- foreach($interface->getMethods() as $method) {
- $this->handleEvent(new InterfaceMethodEvent($method, $interface));
- }
+ foreach ($trait->getMethods() as $method) {
+ $this->handleEvent(new TraitMethodEvent($method, $trait));
+ }
+ $this->handleEvent(new TraitEndEvent($trait));
+ }
+
+ private function processInterface(InterfaceEntry $interfaceEntry): void {
+ $interface = $interfaceEntry->getInterfaceObject($this->xmlDir);
+
+ $this->handleEvent(new InterfaceStartEvent($interface));
- $this->handleEvent(new InterfaceEndEvent($interface));
+ foreach ($interface->getConstants() as $constant) {
+ $this->handleEvent(new InterfaceConstantEvent($constant, $interface));
}
- }
+ foreach ($interface->getMethods() as $method) {
+ $this->handleEvent(new InterfaceMethodEvent($method, $interface));
+ }
- class GeneratorException extends \Exception {
- const UnknownEvent = 1;
- const AlreadyRegistered = 2;
+ $this->handleEvent(new InterfaceEndEvent($interface));
}
+}
+
+class GeneratorException extends \Exception {
+ public const UnknownEvent = 1;
+ public const AlreadyRegistered = 2;
}
diff -Nru phpdox-0.11.2/src/generator/project/collections/AbstractCollection.php phpdox-0.12.0/src/generator/project/collections/AbstractCollection.php
--- phpdox-0.11.2/src/generator/project/collections/AbstractCollection.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/project/collections/AbstractCollection.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,76 +1,69 @@
-nodeList = $nodeList;
- }
-
- /**
- * @return fDOMElement
- */
- protected function getCurrentNode() {
- return $this->nodeList->item($this->position);
- }
-
- /**
- * (PHP 5 >= 5.0.0)
- * Move forward to next element
- *
- * @link http://php.net/manual/en/iterator.next.php
- * @return void Any returned value is ignored.
- */
- public function next() {
- $this->position++;
- }
-
- /**
- * (PHP 5 >= 5.0.0)
- * Return the key of the current element
- *
- * @link http://php.net/manual/en/iterator.key.php
- * @return mixed scalar on success, or null on failure.
- */
- public function key() {
- return $this->position;
- }
-
- /**
- * (PHP 5 >= 5.0.0)
- * Checks if current position is valid
- *
- * @link http://php.net/manual/en/iterator.valid.php
- * @return boolean The return value will be casted to boolean and then evaluated.
- * Returns true on success or false on failure.
- */
- public function valid() {
- return $this->nodeList->length > $this->position;
- }
-
- /**
- * (PHP 5 >= 5.0.0)
- * Rewind the Iterator to the first element
- *
- * @link http://php.net/manual/en/iterator.rewind.php
- * @return void Any returned value is ignored.
- */
- public function rewind() {
- $this->position = 0;
- }
+ public function __construct(\DOMNodeList $nodeList) {
+ $this->nodeList = $nodeList;
+ }
+
+ /**
+ * (PHP 5 >= 5.0.0)
+ * Move forward to next element
+ *
+ * @link http://php.net/manual/en/iterator.next.php
+ */
+ public function next(): void {
+ $this->position++;
+ }
+
+ /**
+ * (PHP 5 >= 5.0.0)
+ * Return the key of the current element
+ *
+ * @link http://php.net/manual/en/iterator.key.php
+ *
+ * @return mixed scalar on success, or null on failure
+ */
+ public function key() {
+ return $this->position;
+ }
+
+ /**
+ * (PHP 5 >= 5.0.0)
+ * Checks if current position is valid
+ *
+ * @link http://php.net/manual/en/iterator.valid.php
+ *
+ * @return bool The return value will be casted to boolean and then evaluated.
+ * Returns true on success or false on failure.
+ */
+ public function valid(): bool {
+ return $this->nodeList->length > $this->position;
+ }
+ /**
+ * (PHP 5 >= 5.0.0)
+ * Rewind the Iterator to the first element
+ *
+ * @link http://php.net/manual/en/iterator.rewind.php
+ */
+ public function rewind(): void {
+ $this->position = 0;
}
+ protected function getCurrentNode(): fDOMElement {
+ return $this->nodeList->item($this->position);
+ }
}
diff -Nru phpdox-0.11.2/src/generator/project/collections/ClassCollection.php phpdox-0.12.0/src/generator/project/collections/ClassCollection.php
--- phpdox-0.11.2/src/generator/project/collections/ClassCollection.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/project/collections/ClassCollection.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,16 +1,8 @@
-getCurrentNode());
- }
-
+getCurrentNode());
}
-
}
diff -Nru phpdox-0.11.2/src/generator/project/collections/ConstantCollection.php phpdox-0.12.0/src/generator/project/collections/ConstantCollection.php
--- phpdox-0.11.2/src/generator/project/collections/ConstantCollection.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/project/collections/ConstantCollection.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,16 +1,8 @@
-getCurrentNode());
- }
-
+getCurrentNode());
}
-
}
diff -Nru phpdox-0.11.2/src/generator/project/collections/InlineCommentCollection.php phpdox-0.12.0/src/generator/project/collections/InlineCommentCollection.php
--- phpdox-0.11.2/src/generator/project/collections/InlineCommentCollection.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/project/collections/InlineCommentCollection.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,16 +1,8 @@
-getCurrentNode());
- }
-
+getCurrentNode());
}
-
}
diff -Nru phpdox-0.11.2/src/generator/project/collections/InterfaceCollection.php phpdox-0.12.0/src/generator/project/collections/InterfaceCollection.php
--- phpdox-0.11.2/src/generator/project/collections/InterfaceCollection.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/project/collections/InterfaceCollection.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,16 +1,8 @@
-getCurrentNode());
- }
-
+getCurrentNode());
}
-
}
diff -Nru phpdox-0.11.2/src/generator/project/collections/MemberCollection.php phpdox-0.12.0/src/generator/project/collections/MemberCollection.php
--- phpdox-0.11.2/src/generator/project/collections/MemberCollection.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/project/collections/MemberCollection.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,16 +1,8 @@
-getCurrentNode());
- }
-
+getCurrentNode());
}
-
}
diff -Nru phpdox-0.11.2/src/generator/project/collections/MethodCollection.php phpdox-0.12.0/src/generator/project/collections/MethodCollection.php
--- phpdox-0.11.2/src/generator/project/collections/MethodCollection.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/project/collections/MethodCollection.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,16 +1,8 @@
-getCurrentNode());
- }
-
+getCurrentNode());
}
-
}
diff -Nru phpdox-0.11.2/src/generator/project/collections/NamespaceCollection.php phpdox-0.12.0/src/generator/project/collections/NamespaceCollection.php
--- phpdox-0.11.2/src/generator/project/collections/NamespaceCollection.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/project/collections/NamespaceCollection.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,16 +1,8 @@
-getCurrentNode());
- }
-
+getCurrentNode());
}
-
}
diff -Nru phpdox-0.11.2/src/generator/project/collections/TraitCollection.php phpdox-0.12.0/src/generator/project/collections/TraitCollection.php
--- phpdox-0.11.2/src/generator/project/collections/TraitCollection.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/project/collections/TraitCollection.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,16 +1,8 @@
-getCurrentNode());
- }
-
+getCurrentNode());
}
-
}
diff -Nru phpdox-0.11.2/src/generator/project/entries/AbstractEntry.php phpdox-0.12.0/src/generator/project/entries/AbstractEntry.php
--- phpdox-0.11.2/src/generator/project/entries/AbstractEntry.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/project/entries/AbstractEntry.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,36 +1,35 @@
-node = $node;
+ }
- public function __construct(fDOMElement $node) {
- $this->node = $node;
- }
+ protected function getNode() {
+ return $this->node;
+ }
- protected function getNode() {
- return $this->node;
- }
+ protected function loadDocument($dir) {
+ $path = $dir . '/' . $this->getNode()->getAttribute('xml');
- protected function loadDocument($dir) {
- $path = $dir . '/' . $this->getNode()->getAttribute('xml');
- if (!isset($this->dom[$path])) {
- $classDom = new fDOMDocument();
- $classDom->load($path);
- $classDom->registerNamespace('phpdox', 'http://xml.phpdox.net/src');
- $this->dom[$path] = $classDom;
- }
- return $this->dom[$path];
+ if (!isset($this->dom[$path])) {
+ $classDom = new fDOMDocument();
+ $classDom->load($path);
+ $classDom->registerNamespace('phpdox', 'http://xml.phpdox.net/src');
+ $this->dom[$path] = $classDom;
}
- }
+ return $this->dom[$path];
+ }
}
diff -Nru phpdox-0.11.2/src/generator/project/entries/ClassEntry.php phpdox-0.12.0/src/generator/project/entries/ClassEntry.php
--- phpdox-0.11.2/src/generator/project/entries/ClassEntry.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/project/entries/ClassEntry.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,20 +1,16 @@
-getNode()->getAttribute('name');
- }
-
- public function asDom() {
- return $this->getNode();
- }
-
- public function getClassObject($dir) {
- return new ClassObject($this->loadDocument($dir));
- }
+class ClassEntry extends AbstractEntry {
+ public function getName() {
+ return $this->getNode()->getAttribute('name');
+ }
+ public function asDom() {
+ return $this->getNode();
}
+ public function getClassObject($dir) {
+ return new ClassObject($this->loadDocument($dir));
+ }
}
diff -Nru phpdox-0.11.2/src/generator/project/entries/InterfaceEntry.php phpdox-0.12.0/src/generator/project/entries/InterfaceEntry.php
--- phpdox-0.11.2/src/generator/project/entries/InterfaceEntry.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/project/entries/InterfaceEntry.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,21 +1,16 @@
-getNode()->getAttribute('name');
- }
-
- public function asDom() {
- return $this->getNode();
- }
-
- public function getInterfaceObject($dir) {
- return new InterfaceObject($this->loadDocument($dir));
- }
+getNode()->getAttribute('name');
+ }
+ public function asDom() {
+ return $this->getNode();
}
+ public function getInterfaceObject($dir) {
+ return new InterfaceObject($this->loadDocument($dir));
+ }
}
diff -Nru phpdox-0.11.2/src/generator/project/entries/NamespaceEntry.php phpdox-0.12.0/src/generator/project/entries/NamespaceEntry.php
--- phpdox-0.11.2/src/generator/project/entries/NamespaceEntry.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/project/entries/NamespaceEntry.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,24 +1,20 @@
-getNode()->getAttribute('name');
- }
-
- public function getClasses() {
- return new ClassCollection($this->getNode()->query('phpdox:class'));
- }
-
- public function getTraits() {
- return new TraitCollection($this->getNode()->query('phpdox:trait'));
- }
+class NamespaceEntry extends AbstractEntry {
+ public function getName() {
+ return $this->getNode()->getAttribute('name');
+ }
- public function getInterfaces() {
- return new InterfaceCollection($this->getNode()->query('phpdox:interface'));
- }
+ public function getClasses() {
+ return new ClassCollection($this->getNode()->query('phpdox:class'));
+ }
+ public function getTraits() {
+ return new TraitCollection($this->getNode()->query('phpdox:trait'));
}
+ public function getInterfaces() {
+ return new InterfaceCollection($this->getNode()->query('phpdox:interface'));
+ }
}
diff -Nru phpdox-0.11.2/src/generator/project/entries/TraitEntry.php phpdox-0.12.0/src/generator/project/entries/TraitEntry.php
--- phpdox-0.11.2/src/generator/project/entries/TraitEntry.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/project/entries/TraitEntry.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,21 +1,16 @@
-getNode()->getAttribute('name');
- }
-
- public function asDom() {
- return $this->getNode();
- }
-
- public function getTraitObject($dir) {
- return new TraitObject($this->loadDocument($dir));
- }
+getNode()->getAttribute('name');
+ }
+ public function asDom() {
+ return $this->getNode();
}
+ public function getTraitObject($dir) {
+ return new TraitObject($this->loadDocument($dir));
+ }
}
diff -Nru phpdox-0.11.2/src/generator/project/Index.php phpdox-0.12.0/src/generator/project/Index.php
--- phpdox-0.11.2/src/generator/project/Index.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/project/Index.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,36 +1,32 @@
-dom = $dom;
- }
-
- public function asDom() {
- return $this->dom;
- }
-
- public function hasNamespaces() {
- return $this->dom->queryOne('count(//phpdox:namespace)') > 0;
- }
+ public function __construct(fDOMDocument $dom) {
+ $this->dom = $dom;
+ }
- public function hasInterfaces() {
- return $this->dom->queryOne('count(//phpdox:interface)') > 0;
- }
+ public function asDom() {
+ return $this->dom;
+ }
- public function hasTraits() {
- return $this->dom->queryOne('count(//phpdox:trait)') > 0;
- }
+ public function hasNamespaces() {
+ return $this->dom->queryOne('count(//phpdox:namespace)') > 0;
+ }
- public function hasClasses() {
- return $this->dom->queryOne('count(//phpdox:class)') > 0;
- }
+ public function hasInterfaces() {
+ return $this->dom->queryOne('count(//phpdox:interface)') > 0;
+ }
+ public function hasTraits() {
+ return $this->dom->queryOne('count(//phpdox:trait)') > 0;
}
+ public function hasClasses() {
+ return $this->dom->queryOne('count(//phpdox:class)') > 0;
+ }
}
diff -Nru phpdox-0.11.2/src/generator/project/objects/AbstractUnitObject.php phpdox-0.12.0/src/generator/project/objects/AbstractUnitObject.php
--- phpdox-0.11.2/src/generator/project/objects/AbstractUnitObject.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/project/objects/AbstractUnitObject.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,66 +1,45 @@
-dom = $dom;
- }
-
- /**
- * @return fDOMDocument
- */
- public function asDom() {
- return $this->dom;
- }
+ public function __construct(fDOMDocument $dom) {
+ $this->dom = $dom;
+ }
- public function getInlineComments() {
- return new InlineCommentCollection($this->dom->query('phpdox:inline'));
- }
+ public function asDom(): fDOMDocument {
+ return $this->dom;
+ }
- /**
- * @return string
- */
- public function getSourceFile() {
- $file = $this->asDom()->queryOne('//phpdox:file');
- if (!$file) {
- return '';
- }
- return $file->getAttribute('realpath');
- }
+ public function getInlineComments() {
+ return new InlineCommentCollection($this->dom->query('phpdox:inline'));
+ }
- /**
- * @return string
- */
- public function getFullName() {
- return $this->dom->documentElement->getAttribute('full');
- }
+ public function getSourceFile(): string {
+ $file = $this->asDom()->queryOne('//phpdox:file');
- /**
- * @return ConstantCollection
- */
- public function getConstants() {
- return new ConstantCollection($this->dom->query('phpdox:constant'));
+ if (!$file) {
+ return '';
}
- /**
- * @return MethodCollection
- */
- public function getMethods() {
- return new MethodCollection($this->dom->query('phpdox:constructor|phpdox:method|phpdox:destructor'));
- }
+ return $file->getAttribute('realpath');
+ }
+ public function getFullName(): string {
+ return $this->dom->documentElement->getAttribute('full');
+ }
+ public function getConstants(): ConstantCollection {
+ return new ConstantCollection($this->dom->query('phpdox:constant'));
}
+ public function getMethods(): MethodCollection {
+ return new MethodCollection($this->dom->query('phpdox:constructor|phpdox:method|phpdox:destructor'));
+ }
}
diff -Nru phpdox-0.11.2/src/generator/project/objects/ClassObject.php phpdox-0.12.0/src/generator/project/objects/ClassObject.php
--- phpdox-0.11.2/src/generator/project/objects/ClassObject.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/project/objects/ClassObject.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,16 +1,8 @@
-asDom()->query('phpdox:member'));
- }
-
+asDom()->query('phpdox:member'));
}
-
}
diff -Nru phpdox-0.11.2/src/generator/project/objects/ConstantObject.php phpdox-0.12.0/src/generator/project/objects/ConstantObject.php
--- phpdox-0.11.2/src/generator/project/objects/ConstantObject.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/project/objects/ConstantObject.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,27 +1,23 @@
-node = $node;
- }
-
- public function getName() {
- return $this->node->getAttribute('name');
- }
-
- public function getValue() {
- return $this->node->getAttribute('value');
- }
+ public function __construct(fDOMElement $node) {
+ $this->node = $node;
+ }
+ public function getName() {
+ return $this->node->getAttribute('name');
}
+ public function getValue() {
+ return $this->node->getAttribute('value');
+ }
}
diff -Nru phpdox-0.11.2/src/generator/project/objects/InlineCommentObject.php phpdox-0.12.0/src/generator/project/objects/InlineCommentObject.php
--- phpdox-0.11.2/src/generator/project/objects/InlineCommentObject.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/project/objects/InlineCommentObject.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,23 +1,19 @@
-node = $node;
- }
-
- public function asDom() {
- return $this->node;
- }
+class InlineCommentObject {
+ /**
+ * @var fDOMElement
+ */
+ private $node;
+ public function __construct(fDOMElement $node) {
+ $this->node = $node;
}
+ public function asDom() {
+ return $this->node;
+ }
}
diff -Nru phpdox-0.11.2/src/generator/project/objects/InterfaceObject.php phpdox-0.12.0/src/generator/project/objects/InterfaceObject.php
--- phpdox-0.11.2/src/generator/project/objects/InterfaceObject.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/project/objects/InterfaceObject.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,7 +1,5 @@
-node = $node;
- }
-
- public function asDom() {
- return $this->node;
- }
-
- public function isPublic() {
- return $this->node->getAttribute('visibility', 'public') == 'public';
- }
+ public function __construct(fDOMElement $node) {
+ $this->node = $node;
+ }
- public function isPrivate() {
- return $this->node->getAttribute('visibility', 'public') == 'private';
- }
+ public function asDom() {
+ return $this->node;
+ }
- public function isProtected() {
- return $this->node->getAttribute('visibility', 'public') == 'protected';
- }
+ public function isPublic() {
+ return $this->node->getAttribute('visibility', 'public') == 'public';
+ }
+ public function isPrivate() {
+ return $this->node->getAttribute('visibility', 'public') == 'private';
}
+ public function isProtected() {
+ return $this->node->getAttribute('visibility', 'public') == 'protected';
+ }
}
diff -Nru phpdox-0.11.2/src/generator/project/objects/MethodObject.php phpdox-0.12.0/src/generator/project/objects/MethodObject.php
--- phpdox-0.11.2/src/generator/project/objects/MethodObject.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/project/objects/MethodObject.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,39 +1,35 @@
-node = $node;
- }
-
- public function asDom() {
- return $this->node;
- }
-
- public function getName() {
- return $this->node->getAttribute('name');
- }
+ public function __construct(fDOMElement $node) {
+ $this->node = $node;
+ }
- public function isPublic() {
- return $this->node->getAttribute('visibility', 'public') == 'public';
- }
+ public function asDom() {
+ return $this->node;
+ }
- public function isPrivate() {
- return $this->node->getAttribute('visibility', 'public') == 'private';
- }
+ public function getName() {
+ return $this->node->getAttribute('name');
+ }
- public function isProtected() {
- return $this->node->getAttribute('visibility', 'public') == 'protected';
- }
+ public function isPublic() {
+ return $this->node->getAttribute('visibility', 'public') == 'public';
+ }
+ public function isPrivate() {
+ return $this->node->getAttribute('visibility', 'public') == 'private';
}
+ public function isProtected() {
+ return $this->node->getAttribute('visibility', 'public') == 'protected';
+ }
}
diff -Nru phpdox-0.11.2/src/generator/project/objects/TraitObject.php phpdox-0.12.0/src/generator/project/objects/TraitObject.php
--- phpdox-0.11.2/src/generator/project/objects/TraitObject.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/project/objects/TraitObject.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,7 +1,5 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts , All rights reserved.
- * @license BSD License
- */
-namespace TheSeer\phpDox\Generator {
-
- use DOMNodeList;
- use TheSeer\fDOM\fDOMDocument;
- use TheSeer\phpDox\FileInfo;
-
- /**
- *
- */
- class Project {
-
- /**
- * @var string
- */
- private $xmlDir;
-
- /**
- * @var string
- */
- private $srcDir;
-
- /**
- * @var fDOMDocument
- */
- private $source = NULL;
-
- /**
- * @var fDOMDocument
- */
- private $index = NULL;
-
- /**
- * @param FileInfo $srcDir
- * @param FileInfo $xmlDir
- */
- public function __construct(FileInfo $srcDir, FileInfo $xmlDir) {
- $this->xmlDir = $xmlDir;
- $this->srcDir = $srcDir;
- $this->initCollections();
- }
-
- /**
- * @return FileInfo
- */
- public function getSourceDir() {
- return $this->srcDir;
- }
-
- /**
- * @return FileInfo
- */
- public function getXmlDir() {
- return $this->xmlDir;
- }
-
-
- /**
- * @return Index
- */
- public function getIndex() {
- return new Index($this->index);
- }
-
- /**
- * @return SourceTree
- */
- public function getSourceTree() {
- return new SourceTree($this->source);
- }
-
- /**
- * @return bool
- */
- public function hasNamespaces() {
- return $this->index->query('count(//phpdox:namespace[not(@name="/")])') > 0;
- }
-
- /**
- * @return DOMNodeList
- */
- public function getNamespaces() {
- return new NamespaceCollection($this->index->query('//phpdox:namespace'));
- }
-
- /**
- * @param string $namespace
- * @return ClassCollection
- */
- public function getClasses($namespace = NULL) {
- $root = ($namespace !== NULL) ? sprintf('//phpdox:namespace[@name="%s"]/', $namespace) : '//';
- return new ClassCollection($this->index->query($root . 'phpdox:class'));
- }
-
- /**
- * @param string $namespace
- * @return TraitCollection
- */
- public function getTraits($namespace = NULL) {
- $root = ($namespace !== NULL) ? sprintf('//phpdox:namespace[@name="%s"]/', $namespace) : '//';
- return new TraitCollection($this->index->query($root . 'phpdox:trait'));
- }
-
- /**
- * @param string $namespace
- * @return InterfaceCollection
- */
- public function getInterfaces($namespace = NULL) {
- $root = ($namespace !== NULL) ? sprintf('//phpdox:namespace[@name="%s"]/', $namespace) : '//';
- return new InterfaceCollection($this->index->query($root . 'phpdox:interface'));
- }
-
- /**
- * @return void
- */
- private function initCollections() {
- $this->source = new fDOMDocument();
- $this->source->load($this->xmlDir . '/source.xml');
- $this->source->registerNamespace('phpdox', 'http://xml.phpdox.net/src');
-
- $this->index = new fDOMDocument();
- $this->index->load($this->xmlDir . '/index.xml');
- $this->index->registerNamespace('phpdox', 'http://xml.phpdox.net/src');
- }
+xmlDir = $xmlDir;
+ $this->srcDir = $srcDir;
+ $this->initCollections();
+ }
+
+ public function getSourceDir(): FileInfo {
+ return $this->srcDir;
}
+ public function getXmlDir(): FileInfo {
+ return $this->xmlDir;
+ }
- class ProjectException extends \Exception {
+ public function getIndex(): Index {
+ return new Index($this->index);
+ }
- const UnitNotFoundInIndex = 1;
+ public function getSourceTree(): SourceTree {
+ return new SourceTree($this->source);
+ }
+
+ public function hasNamespaces(): bool {
+ return $this->index->query('count(//phpdox:namespace[not(@name="/")])') > 0;
+ }
+ public function getNamespaces(): NamespaceCollection {
+ return new NamespaceCollection($this->index->query('//phpdox:namespace'));
}
+
+ /**
+ * @param string $namespace
+ */
+ public function getClasses($namespace = null): ClassCollection {
+ $root = ($namespace !== null) ? \sprintf('//phpdox:namespace[@name="%s"]/', $namespace) : '//';
+
+ return new ClassCollection($this->index->query($root . 'phpdox:class'));
+ }
+
+ /**
+ * @param string $namespace
+ */
+ public function getTraits($namespace = null): TraitCollection {
+ $root = ($namespace !== null) ? \sprintf('//phpdox:namespace[@name="%s"]/', $namespace) : '//';
+
+ return new TraitCollection($this->index->query($root . 'phpdox:trait'));
+ }
+
+ /**
+ * @param string $namespace
+ */
+ public function getInterfaces($namespace = null): InterfaceCollection {
+ $root = ($namespace !== null) ? \sprintf('//phpdox:namespace[@name="%s"]/', $namespace) : '//';
+
+ return new InterfaceCollection($this->index->query($root . 'phpdox:interface'));
+ }
+
+ private function initCollections(): void {
+ $this->source = new fDOMDocument();
+ $this->source->load($this->xmlDir . '/source.xml');
+ $this->source->registerNamespace('phpdox', 'http://xml.phpdox.net/src');
+
+ $this->index = new fDOMDocument();
+ $this->index->load($this->xmlDir . '/index.xml');
+ $this->index->registerNamespace('phpdox', 'http://xml.phpdox.net/src');
+ }
+}
+
+class ProjectException extends \Exception {
+ public const UnitNotFoundInIndex = 1;
}
diff -Nru phpdox-0.11.2/src/generator/project/SourceTree.php phpdox-0.12.0/src/generator/project/SourceTree.php
--- phpdox-0.11.2/src/generator/project/SourceTree.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/project/SourceTree.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,29 +1,21 @@
-dom = $dom;
- $this->dom->registerNamespace('phpdox', 'http://xml.phpdox.net/src');
- }
-
- /**
- * @return TokenFileIterator
- */
- public function getIterator() {
- return new TokenFileIterator($this->dom->query('//phpdox:file'));
- }
-
- public function asDom() {
- return $this->dom;
- }
+ public function __construct(fDOMDocument $dom) {
+ $this->dom = $dom;
+ $this->dom->registerNamespace('phpdox', 'http://xml.phpdox.net/src');
+ }
+ public function getIterator(): TokenFileIterator {
+ return new TokenFileIterator($this->dom->query('//phpdox:file'));
}
+ public function asDom() {
+ return $this->dom;
+ }
}
diff -Nru phpdox-0.11.2/src/generator/project/TokenFileIterator.php phpdox-0.12.0/src/generator/project/TokenFileIterator.php
--- phpdox-0.11.2/src/generator/project/TokenFileIterator.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/project/TokenFileIterator.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,49 +1,43 @@
-nodeList = $nodeList;
- }
-
- /**
- * @var int
- */
- private $pos = 0;
-
- /**
- * @return TokenFile
- */
- public function current() {
- $item = $this->nodeList->item($this->pos);
- $path = dirname(urldecode($item->ownerDocument->documentURI)) . '/' . $item->getAttribute('xml');
- return new TokenFile(new FileInfo($path));
- }
-
- public function next() {
- $this->pos++;
- }
-
- public function key() {
- return $this->pos;
- }
-
- public function valid() {
- return $this->nodeList->length > $this->pos;
- }
-
- public function rewind() {
- $this->pos = 0;
- }
+ public function __construct(\DOMNodeList $nodeList) {
+ $this->nodeList = $nodeList;
+ }
+
+ public function current(): TokenFile {
+ $item = $this->nodeList->item($this->pos);
+ $path = \dirname(\str_replace('file:/', '', \urldecode($item->ownerDocument->documentURI))) . '/' . $item->getAttribute('xml');
+ return new TokenFile(new FileInfo($path));
}
+ public function next(): void {
+ $this->pos++;
+ }
+
+ public function key() {
+ return $this->pos;
+ }
+
+ public function valid() {
+ return $this->nodeList->length > $this->pos;
+ }
+
+ public function rewind(): void {
+ $this->pos = 0;
+ }
}
diff -Nru phpdox-0.11.2/src/generator/project/TokenFile.php phpdox-0.12.0/src/generator/project/TokenFile.php
--- phpdox-0.11.2/src/generator/project/TokenFile.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/generator/project/TokenFile.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,47 +1,45 @@
-exists()) {
- throw new TokenFileException(
- sprintf("File '%s' not found", $file->getPathname()),
- TokenFileException::FileNotFound
- );
- }
- $this->file = $file;
- }
-
- public function getRelativeName(FileInfo $path) {
- $file = new FileInfo($this->asDom()->getElementsByTagNameNS(SourceFile::XMLNS, 'file')->item(0)->getAttribute('realpath'));
- return $file->getRelative($path, FALSE);
+use TheSeer\fDOM\fDOMDocument;
+use TheSeer\phpDox\Collector\SourceFile;
+use TheSeer\phpDox\FileInfo;
+
+class TokenFile {
+ /**
+ * @var FileInfo
+ */
+ private $file;
+
+ private $dom;
+
+ public function __construct(FileInfo $file) {
+ if (!$file->exists()) {
+ throw new TokenFileException(
+ \sprintf("File '%s' not found", $file->getPathname()),
+ TokenFileException::FileNotFound
+ );
}
+ $this->file = $file;
+ }
- public function asDom() {
- if (!$this->dom instanceof fDOMDocument) {
- $this->dom = new fDOMDocument();
- $this->dom->load($this->file->getPathname());
- $this->dom->registerNamespace('phpdox', SourceFile::XMLNS);
- }
- return $this->dom;
- }
+ public function getRelativeName(FileInfo $path) {
+ $file = new FileInfo($this->asDom()->getElementsByTagNameNS(SourceFile::XMLNS, 'file')->item(0)->getAttribute('realpath'));
+ return $file->getRelative($path, false);
}
- class TokenFileException extends \Exception {
- const FileNotFound = 1;
+ public function asDom() {
+ if (!$this->dom instanceof fDOMDocument) {
+ $this->dom = new fDOMDocument();
+ $this->dom->load($this->file->getPathname());
+ $this->dom->registerNamespace('phpdox', SourceFile::XMLNS);
+ }
+
+ return $this->dom;
}
+}
+class TokenFileException extends \Exception {
+ public const FileNotFound = 1;
}
diff -Nru phpdox-0.11.2/src/logger/ProgressLoggerException.php phpdox-0.12.0/src/logger/ProgressLoggerException.php
--- phpdox-0.11.2/src/logger/ProgressLoggerException.php 2018-05-22 16:43:30.000000000 +0000
+++ phpdox-0.12.0/src/logger/ProgressLoggerException.php 2019-03-13 09:34:17.000000000 +0000
@@ -1,10 +1,6 @@
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * * Neither the name of Arne Blankerts nor the names of contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT * NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * @package phpDox
- * @author Arne Blankerts
- * @copyright Arne Blankerts