Source for file Errors.inc
Documentation is available at Errors.inc
- <?php
- /**
- * Error handling for phpDocumentor
- *
- * phpDocumentor :: automatic documentation generator
- *
- * PHP versions 4 and 5
- *
- * Copyright (c) 2001-2008 Gregory Beaver
- *
- * LICENSE:
- *
- * This library is free software; you can redistribute it
- * and/or modify it under the terms of the GNU Lesser General
- * Public License as published by the Free Software Foundation;
- * either version 2.1 of the License, or (at your option) any
- * later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- *
- * @category ToolsAndUtilities
- * @package phpDocumentor
- * @subpackage Errors
- * @author Greg Beaver <cellog@php.net>
- * @copyright 2001-2008 Gregory Beaver
- * @license http://www.opensource.org/licenses/lgpl-license.php LGPL
- * @version CVS: $Id: Errors.inc 253641 2008-02-24 02:35:44Z ashnazg $
- * @filesource
- * @link http://www.phpdoc.org
- * @link http://pear.php.net/PhpDocumentor
- * @see parserDocBlock, parserInclude, parserPage, parserClass
- * @see parserDefine, parserFunction, parserMethod, parserVar
- * @since 0.4
- * @todo CS cleanup - change package to PhpDocumentor
- */
- /**
- * warning triggered when inheritance could be from more than one class
- */
- define("PDERROR_MULTIPLE_PARENT", 1);
- /**
- * warning triggered when parent class doesn't exist
- */
- define("PDERROR_PARENT_NOT_FOUND", 2);
- /**
- * warning triggered when an {@inline tag} is not terminated
- * (no } before the * / ending the comment)
- */
- define("PDERROR_UNTERMINATED_INLINE_TAG", 3);
- /**
- * warning triggered when inheritance could be from more than one class
- */
- define("PDERROR_CLASS_EXISTS", 4);
- /**
- * warning triggered when inheritance could be from more than one class
- */
- define("PDERROR_INHERITANCE_CONFLICT", 5);
- /**
- * warning triggered when a converter is passed to
- * {@link phpDocumentor_IntermediateParser::addConverter()} that is not a class
- */
- define("PDERROR_CONVERTER_NOT_FOUND", 6);
- /**
- * warning triggered when a converter is passed to
- * {@link phpDocumentor_IntermediateParser::addConverter()} that is not a class
- */
- define("PDERROR_NO_CONVERTERS", 7);
- /**
- * warning triggered when the arguments to @access are neither public nor private
- */
- define("PDERROR_ACCESS_WRONG_PARAM", 8);
- /**
- * warning triggered when there are multiple @access tags in a docblock
- */
- define("PDERROR_MULTIPLE_ACCESS_TAGS", 9);
- /**
- * warning triggered when there are multiple @return tags in a docblock
- */
- define("PDERROR_MULTIPLE_RETURN_TAGS", 10);
- /**
- * warning triggered when there are multiple @var tags in a docblock
- */
- define("PDERROR_MULTIPLE_VAR_TAGS", 11);
- /**
- * warning triggered when there are multiple @package tags in a docblock
- */
- define("PDERROR_MULTIPLE_PACKAGE_TAGS", 12);
- /**
- * warning triggered when there are multiple @subpackage tags in a docblock
- */
- define("PDERROR_MULTIPLE_SUBPACKAGE_TAGS", 13);
- /**
- * warning triggered when the package or subpackage name is illegal
- */
- define("PDERROR_ILLEGAL_PACKAGENAME", 14);
- /**
- * warning triggered when there a @package tag is used in a function,
- * define, method, var or include
- */
- define("PDERROR_OVERRIDDEN_PACKAGE_TAGS", 15);
- /**
- * warning triggered when there a @subpackage tag is used in a function,
- * define, method, var or include
- */
- define("PDERROR_OVERRIDDEN_SUBPACKAGE_TAGS", 16);
- /**
- * warning triggered when classes in the same package have the same name
- */
- define("PDERROR_CLASS_CONFLICT", 17);
- /**
- * warning triggered when classes in the same package have the same name
- */
- define("PDERROR_UNKNOWN_TAG", 18);
- /**
- * warning triggered when there are multiple @name tags in a docblock
- */
- define("PDERROR_MULTIPLE_NAME_TAGS", 19);
- /**
- * warning triggered when there are multiple @name tags in a docblock
- * @todo I think this description is a copy/paste that was never updated
- */
- define("PDERROR_PACKAGEOUTPUT_DELETES_PARENT_FILE", 20);
- /**
- * warning triggered when there are multiple @name tags in a docblock
- * @todo I think this description is a copy/paste that was never updated
- */
- define("PDERROR_GLOBAL_NOT_FOUND", 21);
- /**
- * warning triggered when there are multiple @name tags in a docblock
- * @todo I think this description is a copy/paste that was never updated
- */
- define("PDERROR_MULTIPLE_GLOBAL_TAGS", 22);
- /**
- * warning triggered when there are multiple @name tags in a docblock
- * @todo I think this description is a copy/paste that was never updated
- */
- define("PDERROR_MALFORMED_GLOBAL_TAG", 23);
- /**
- * warning triggered when an @ignore tag is used in a DocBlock preceding
- * a method, variable, include, or global variable
- */
- define("PDERROR_IGNORE_TAG_IGNORED", 24);
- /**
- * warning triggered when a duplicate element is encountered that will be
- * ignored by the documentor
- */
- define("PDERROR_ELEMENT_IGNORED", 25);
- /**
- * warning triggered when an entire page is ignored because of @access private
- */
- define("PDERROR_PARSEPRIVATE", 26);
- /**
- * warning triggered when an entire page is ignored because of @access private
- * @todo I think this description is a copy/paste that was never updated
- */
- define("PDERROR_UNKNOWN_COMMANDLINE", 27);
- /**
- * warning triggered when an entire page is ignored because of @access private
- * @todo I think this description is a copy/paste that was never updated
- */
- define("PDERROR_NEED_WHITESPACE", 28);
- /**
- * warning triggered when an entire page is ignored because of @access private
- * @todo I think this description is a copy/paste that was never updated
- */
- define("PDERROR_CLASS_PARENT_NOT_FOUND", 29);
- /**
- * warning triggered when a getClassByPackage is called and can't find the class
- */
- define("PDERROR_CLASS_NOT_IN_PACKAGE", 30);
- /**
- * warning triggered when a { @source } inline tag is used in a docblock not
- * preceding a function
- */
- define("PDERROR_SOURCE_TAG_FUNCTION_NOT_FOUND", 31);
- /**
- * warning triggered when a docblock template is never turned off
- * with /**#@-* / (no space)
- */
- define("PDERROR_DB_TEMPLATE_UNTERMINATED", 32);
- /**
- * warning triggered when a docblock has an unmatched <ol> or <ul>
- */
- define("PDERROR_UNMATCHED_LIST_TAG", 33);
- /**
- * warning triggered when another tag is nested in <b>
- * (not allowed in phpDocumentor)
- */
- define("PDERROR_CANT_NEST_IN_B", 34);
- /**
- * warning triggered when a docbook tag is not properly matched
- */
- define("PDERROR_UNMATCHED_TUTORIAL_TAG", 35);
- /**
- * warning triggered when an inline tag is found inside an xml tag name
- * in a package page
- */
- define("PDERROR_CANT_HAVE_INLINE_IN_TAGNAME", 36);
- /**
- * warning triggered when a tutorial is referenced
- * via @tutorial/{ @tutorial} and is not found
- */
- define("PDERROR_TUTORIAL_NOT_FOUND", 37);
- /**
- * warning triggered when a tutorial lists itself as a child tutorial
- */
- define("PDERROR_TUTORIAL_IS_OWN_CHILD", 38);
- /**
- * warning triggered when a tutorial's child lists the parent tutorial
- * as a child tutorial
- */
- define("PDERROR_TUTORIAL_IS_OWN_GRANDPA", 39);
- /**
- * warning triggered when a tutorial's child in the .ini file doesn't exist in the
- * package and subpackage of the parent
- */
- define("PDERROR_CHILD_TUTORIAL_NOT_FOUND", 40);
- /**
- * warning triggered when a <pdffunction:funcname /> tag is used in the PDF
- * Converter and no funcname is present (<pdffunction: />)
- */
- define("PDERROR_PDFFUNCTION_NO_FUNC", 41);
- /**
- * warning triggered when a <pdffunction:funcname /> tag is used in the PDF
- * Converter and funcname is not a {@link Cezpdf} method
- */
- define("PDERROR_PDF_METHOD_DOESNT_EXIST", 42);
- /**
- * warning triggered when a <pdffunction:funcname arg=$tempvar/> tag
- * is used in the PDF
- * Converter and "tempvar" is not set from the return of a previous pdffunction tag
- */
- define("PDERROR_PDF_TEMPVAR_DOESNT_EXIST", 43);
- /**
- * warning triggered when a subsection's title is asked for, but the subsection
- * is not found
- */
- define("PDERROR_TUTORIAL_SUBSECTION_NOT_FOUND", 44);
- /**
- * warning triggered when a subsection's title is asked for, but the subsection
- * is not found
- */
- define("PDERROR_UNTERMINATED_ATTRIB", 45);
- /**
- * warning triggered when no @package tag is used in a page-level
- * or class-level DocBlock
- */
- define("PDERROR_NO_PACKAGE_TAG", 46);
- /**
- * warning triggered when no @access private tag is used in a
- * global variable/method/var with _ as first char in name
- * and --pear was specified
- */
- define("PDERROR_PRIVATE_ASSUMED", 47);
- /**
- * warning triggered when an example's path from @example /path/to/example.php
- * is not found
- */
- define("PDERROR_EXAMPLE_NOT_FOUND", 48);
- /**
- * warning triggered when an example's path from @example /path/to/example.php
- * is not found
- */
- define("PDERROR_NO_CONVERTER_HANDLER", 49);
- /**
- * warning triggered when an example's path from @example /path/to/example.php
- * is not found
- */
- define("PDERROR_INLINETAG_IN_SEE", 50);
- /**
- * warning triggered when an id attribute in a tutorial docbook tag is not
- * an {@}id} inline tag
- */
- define("PDERROR_ID_MUST_BE_INLINE", 51);
- /**
- * warning triggered when an {@}internal}} tag is not closed
- */
- define("PDERROR_INTERNAL_NOT_CLOSED", 52);
- /**
- * warning triggered when an {@}source} tag is found in a short description
- */
- define("PDERROR_SOURCE_TAG_IGNORED", 53);
- /**
- * warning triggered when a child converter doesn't override
- * getFormattedClassTrees()
- */
- define("PDERROR_CONVERTER_OVR_GFCT", 54);
- /**
- * warning triggered when a package is already associated with a category, and
- * a new association is found
- */
- define("PDERROR_PACKAGECAT_SET", 55);
- /**
- * warning triggered when text in a docblock list is not contained in
- * an <<li>> opening tag
- */
- define("PDERROR_TEXT_OUTSIDE_LI", 56);
- /**
- * warning triggered when a DocBlock html tag is unclosed
- */
- define("PDERROR_UNCLOSED_TAG", 57);
- /**
- * warning triggered by @filesource, if PHP < 4.3.0
- */
- define("PDERROR_TAG_NOT_HANDLED", 58);
- /**
- * warning triggered by sourcecode="on", if PHP < 4.3.0
- */
- define("PDERROR_SOURCECODE_IGNORED", 59);
- /**
- * warning triggered by an empty tag
- */
- define("PDERROR_MALFORMED_TAG", 60);
- /**
- * warning triggered by more than 1 @category tag
- */
- define("PDERROR_MULTIPLE_CATEGORY_TAGS", 61);
- /**
- * warning triggered by {@}inheritdoc} in a non-inheritable situation
- */
- define("PDERROR_INHERITDOC_DONT_WORK_HERE", 62);
- /**
- * warning triggered by @example path/to/example with no title
- */
- define("PDERROR_EMPTY_EXAMPLE_TITLE", 63);
- /**
- * warning triggered by non-existent template directory
- */
- define("PDERROR_TEMPLATEDIR_DOESNT_EXIST", 64);
- /**
- * warning triggered by an unterminated entity in a tutorial
- */
- define("PDERROR_UNTERMINATED_ENTITY", 65);
- /**
- * warning triggered by an unterminated entity in a tutorial
- */
- define("PDERROR_BEAUTIFYING_FAILED", 66);
- /**
- * warning triggered by a function with no name
- *
- * <pre>
- * function ($params)
- * {
- * }
- * </pre>
- * triggers this error
- */
- define("PDERROR_FUNCTION_HAS_NONAME", 67);
- /**
- * warning triggered by a page-level docblock preceding a source element
- *
- * <code>
- * <?php
- * /**
- * * Page-level DocBlock
- * * @package pagepackage
- * *{@*}
- * include 'file.php';
- * </code>
- */
- define("PDERROR_DOCBLOCK_CONFLICT", 68);
- /**
- * warning triggered when a file does not contain a page-level docblock
- */
- define("PDERROR_NO_PAGE_LEVELDOCBLOCK", 69);
- /**
- * warning triggered when the first docblock in a file with a @package tag
- * precedes a class. In this case, the class gets the docblock.
- */
- define("PDERROR_DOCBLOCK_GOES_CLASS", 70);
- /**
- * warning triggered in tutorial parsing if there is a missing {@id} inline tag
- */
- define("PDERROR_NO_DOCBOOK_ID", 71);
- /**
- * warning triggered if someone brilliant tries "class X extends X {"
- */
- define("PDERROR_CANNOT_EXTEND_SELF", 72);
- /**
- * warning triggered by improper "@uses {@link blah}"
- */
- define("PDERROR_DUMB_USES", 73);
- /**
- * warning triggered if <<ul>> is nested inside <<ul>> and not <<li>>
- */
- define("PDERROR_UL_IN_UL", 74);
- /**
- * warning triggered if a command line option does not have a valid value passed in
- */
- define("PDERROR_INVALID_VALUES", 75);
- /**
- * warning triggered when {@}internal}} is nested inside another {@}internal}}
- */
- define("PDERROR_NESTED_INTERNAL", 76);
- /**
- * warning triggered when @todo is used on an include element
- */
- define("PDERROR_NOTODO_INCLUDE", 77);
- /**
- * warning triggered when a class or method hasn't got docblock
- */
- define("PDERROR_UNDOCUMENTED_ELEMENT", 78);
- /**
- * warning triggered when any of {@}property}}, {@}property-read}},
- * {@}property-write}}, or {@}method}} tag does not have name
- */
- define("PDERROR_MISSING_PROPERTY_TAG_NAME", 79);
- /**
- * warning triggered when the PHP version being used has dangerous bug/behavior
- */
- define("PDERROR_DANGEROUS_PHP_BUG_EXISTS", 80);
- /**
- * warning triggered when the alias value in an page-level docblock's @name tag
- * is the same value as the target filename is it supposed to alias
- */
- define("PDERROR_NAME_ALIAS_SAME_AS_TARGET", 81);
- /**
- * warning triggered when the a loop recursion tripwire has been tripped
- */
- define("PDERROR_LOOP_RECURSION_LIMIT_REACHED", 82);
-
- /**
- * Error messages for phpDocumentor parser warnings
- * @global array $GLOBALS['phpDocumentor_warning_descrip']
- * @name $phpDocumentor_warning_descrip
- */
- $GLOBALS['phpDocumentor_warning_descrip'] =
- array(
- PDERROR_MULTIPLE_PARENT =>
- 'Class %s has multiple possible parents, package inheritance aborted'
- ,
- PDERROR_PARENT_NOT_FOUND =>
- 'Class %s parent %s not found'
- ,
- PDERROR_INHERITANCE_CONFLICT =>
- 'Class %s in file %s has multiple possible parents named %s. ' .
- 'Cannot resolve name conflict,' . "\n" .
- ' try ignoring a file that contains the conflicting parent class'
- ,
- PDERROR_UNKNOWN_TAG =>
- 'Unknown tag "@%s" used'
- ,
- PDERROR_IGNORE_TAG_IGNORED =>
- '@ignore tag used for %s element "%s" will be ignored'
- ,
- PDERROR_ELEMENT_IGNORED =>
- "\n" . 'duplicate %s element "%s" in file %s will be ignored.' . "\n" .
- 'Use an @ignore tag on the original ' .
- 'if you want this case to be documented.'
- ,
- PDERROR_PARSEPRIVATE =>
- "entire page %s ignored because of @access private." . "\n" .
- "Choose -pp to enable parsing of private elements"
- ,
- PDERROR_CLASS_PARENT_NOT_FOUND =>
- "class %s in package %s parent not found in @see parent::%s"
- ,
- PDERROR_CLASS_NOT_IN_PACKAGE =>
- "class %s was not found in package %s"
- ,
- PDERROR_DB_TEMPLATE_UNTERMINATED =>
- 'docblock template never terminated with /**#@-*/'
- ,
- PDERROR_PDF_METHOD_DOESNT_EXIST =>
- '<pdffunction:%s /> called, but pdf method "%s" doesn\'t exist'
- ,
- PDERROR_TUTORIAL_NOT_FOUND =>
- "tutorial \"%s\" not found, does it exist?"
- ,
- PDERROR_CHILD_TUTORIAL_NOT_FOUND =>
- 'child tutorial "%s" listed in %s not found ' .
- 'in parent package "%s" subpackage "%s"'
- ,
- PDERROR_TUTORIAL_SUBSECTION_NOT_FOUND =>
- 'tutorial %s subsection "%s" doesn\'t exist, ' .
- 'but its title was asked for'
- ,
- PDERROR_NO_PACKAGE_TAG =>
- 'no @package tag was used in a DocBlock for %s %s'
- ,
- PDERROR_PRIVATE_ASSUMED =>
- '%s "%s" is assumed to be @access private because its name ' .
- 'starts with _, but has no @access tag'
- ,
- PDERROR_EXAMPLE_NOT_FOUND =>
- 'example file "%s" does not exist'
- ,
- PDERROR_SOURCE_TAG_IGNORED =>
- '{@source} can only be used in the long description, ' .
- 'not in the short description: "%s"'
- ,
- PDERROR_PACKAGECAT_SET =>
- 'package %s is already in category %s, ' .
- 'will now replace with category %s'
- ,
- PDERROR_SOURCECODE_IGNORED =>
- 'sourcecode command-line option is ignored ' .
- 'when your PHP build has no tokenizer support'
- ,
- PDERROR_INHERITDOC_DONT_WORK_HERE =>
- '{@inheritdoc} can only be used in the docblock of a child class'
- ,
- PDERROR_EMPTY_EXAMPLE_TITLE =>
- 'Example file found at "%s" has no title, using "%s"'
- ,
- PDERROR_DOCBLOCK_CONFLICT =>
- 'Page-level DocBlock precedes "%s %s", ' .
- 'use another DocBlock to document the source element'
- ,
- PDERROR_NO_PAGE_LEVELDOCBLOCK =>
- 'File "%s" has no page-level DocBlock, ' .
- 'use @package in the first DocBlock to create one'
- ,
- PDERROR_DOCBLOCK_GOES_CLASS =>
- 'DocBlock would be page-level, but precedes class "%s", ' .
- 'use another DocBlock to document the file'
- ,
- PDERROR_NO_DOCBOOK_ID =>
- 'Tutorial section %s "%s" has no id="{@id subsection}" tag ' .
- '({@id} for refentry)'
- ,
- PDERROR_BEAUTIFYING_FAILED =>
- 'Beautifying failed: %s'
- ,
- PDERROR_NOTODO_INCLUDE =>
- '@todo on an include element is ignored (line %s, file %s)'
- ,
- PDERROR_UNDOCUMENTED_ELEMENT =>
- '%s "%s" has no %s-level DocBlock.'
- ,
- PDERROR_MISSING_PROPERTY_TAG_NAME =>
- '@%s magic tag does not have name, illegal. Ignoring tag "@%s %s %s"'
- ,
- PDERROR_NAME_ALIAS_SAME_AS_TARGET =>
- '@name value is the same as the filename it is supposed to alias'
- );
-
-
-
- //********************************************************
-
-
-
- /**
- * Error messages for phpDocumentor parser errors
- * @global array $GLOBALS['phpDocumentor_error_descrip']
- * @name $phpDocumentor_error_descrip
- */
- $GLOBALS['phpDocumentor_error_descrip'] =
- array(
- PDERROR_UNTERMINATED_INLINE_TAG =>
- 'Inline tag {@%s} in tag %s is unterminated, "%s"'
- ,
- PDERROR_CLASS_EXISTS =>
- 'Class %s already exists in package "%s"'
- ,
- PDERROR_CONVERTER_NOT_FOUND =>
- 'Converter %s specified by --output command-line option is not a class'
- ,
- PDERROR_NO_CONVERTERS =>
- 'No Converters have been specified by --output command-line option'
- ,
- PDERROR_ACCESS_WRONG_PARAM =>
- '@access was passed neither "public" nor "private." Was passed: "%s"'
- ,
- PDERROR_MULTIPLE_ACCESS_TAGS =>
- 'DocBlock has multiple @access tags, illegal. ' .
- 'ignoring additional tag "@access %s"'
- ,
- PDERROR_MULTIPLE_RETURN_TAGS =>
- 'DocBlock has multiple @return tags, illegal. ' .
- 'ignoring additional tag "@return %s %s"'
- ,
- PDERROR_MULTIPLE_VAR_TAGS =>
- 'DocBlock has multiple @var tags, illegal. ' .
- 'ignoring additional tag "@var %s %s"'
- ,
- PDERROR_MULTIPLE_PACKAGE_TAGS =>
- 'DocBlock has multiple @package tags, illegal. ' .
- 'ignoring additional tag "@package %s"'
- ,
- PDERROR_MULTIPLE_SUBPACKAGE_TAGS =>
- 'DocBlock has multiple @subpackage tags, illegal. ' .
- 'ignoring additional tag "@subpackage %s"'
- ,
- PDERROR_ILLEGAL_PACKAGENAME =>
- '@%s tag has illegal %s name "%s"'
- ,
- PDERROR_OVERRIDDEN_PACKAGE_TAGS =>
- '%s %s\'s DocBlock has @package tag, illegal. ' .
- 'ignoring tag "@package %s"'
- ,
- PDERROR_OVERRIDDEN_SUBPACKAGE_TAGS =>
- '"%s" %s\'s DocBlock has @subpackage tags, illegal. ' .
- 'ignoring tag "@subpackage %s"'
- ,
- PDERROR_CLASS_CONFLICT =>
- 'class "%s" has multiple declarations in package %s, ' .
- 'in file %s and file %s, documentation will have output errors!'
- ,
- PDERROR_MULTIPLE_NAME_TAGS =>
- 'DocBlock has multiple @name tags, illegal. ' .
- 'ignoring additional tag "@name %s"'
- ,
- PDERROR_PACKAGEOUTPUT_DELETES_PARENT_FILE =>
- '-po (packageoutput) option deletes parent file "%s" containing class' .
- ' "%s."' . "\n" . ' Try using --defaultpackagename (-dn) %s to ' .
- 'include the parent file in the same package as the class'
- ,
- PDERROR_GLOBAL_NOT_FOUND =>
- 'global variable %s specified in @global tag was never found'
- ,
- PDERROR_MULTIPLE_GLOBAL_TAGS =>
- '@global define tag already used for global variable "%s", ' .
- 'ignoring @global %s'
- ,
- PDERROR_MALFORMED_GLOBAL_TAG =>
- 'incorrect @global syntax. ' .
- 'Should be @global vartype $varname or @global vartype description'
- ,
- PDERROR_UNKNOWN_COMMANDLINE =>
- 'Unknown command-line option "%s" encountered, use phpdoc -h for help'
- ,
- PDERROR_NEED_WHITESPACE =>
- 'phpDocumentor programmer error - wordparser whitespace set to false ' .
- 'in handleDocBlock, notify developers. You should never see this error'
- ,
- PDERROR_SOURCE_TAG_FUNCTION_NOT_FOUND =>
- '{@source} tag used in a docblock that isn\'t preceding a function'
- ,
- PDERROR_UNMATCHED_LIST_TAG =>
- 'unmatched ol or ul tag in DocBlock, parsing will be incorrect'
- ,
- PDERROR_CANT_NEST_IN_B =>
- 'Can\'t nest a code, pre, ul, or ol tag in a b tag in ' .
- 'phpDocumentor DocBlock (%s tag nested)'
- ,
- PDERROR_UNMATCHED_TUTORIAL_TAG =>
- 'While parsing extended documentation, "%s" tag was matched ' .
- 'with "%s" endtag, missing endtag'."\ntag contents:\"%s\""
- ,
- PDERROR_CANT_HAVE_INLINE_IN_TAGNAME =>
- 'Can\'t have an inline tag inside a package page XML tag!'
- ,
- PDERROR_TUTORIAL_IS_OWN_CHILD =>
- 'Tutorial %s lists itself as its own child in %s, illegal'
- ,
- PDERROR_TUTORIAL_IS_OWN_GRANDPA =>
- 'Tutorial %s\'s child %s lists %s as its child in %s, illegal'
- ,
- PDERROR_PDFFUNCTION_NO_FUNC =>
- 'Invalid pdffunction syntax: "<pdffunction: />", ' .
- 'should be "<pdffunction:functionname [arg="value"...]/>"'
- ,
- PDERROR_PDF_TEMPVAR_DOESNT_EXIST =>
- '<pdffunction:%s arg=%s /> called ' .
- 'but temporary variable "%s" doesn\'t exist'
- ,
- PDERROR_UNTERMINATED_ATTRIB =>
- 'Tutorial tag %s attribute %s is unterminated, current value "%s"'
- ,
- PDERROR_NO_CONVERTER_HANDLER =>
- 'Handler for element of type "%s" called, but %s is not a method of %s'
- ,
- PDERROR_INLINETAG_IN_SEE =>
- 'Inline tags are not allowed in a @see tag'
- ,
- PDERROR_ID_MUST_BE_INLINE =>
- '<%s id="%s"> must be <%s id="{@id %s}">'
- ,
- PDERROR_INTERNAL_NOT_CLOSED =>
- '{@internal was never terminated with }}'
- ,
- PDERROR_CONVERTER_OVR_GFCT =>
- 'Converter "%s" must override getFormattedClassTrees() but doesn\'t'
- ,
- PDERROR_TEXT_OUTSIDE_LI =>
- 'Text cannot be outside of li tag in a DocBlock list, ' .
- 'parsing will be incorrect'
- ,
- PDERROR_UNCLOSED_TAG =>
- 'Unclosed %s tag in DocBlock, parsing will be incorrect'
- ,
- PDERROR_TAG_NOT_HANDLED =>
- '"%s" tag is not available in PHP built without tokenizer support, tag ignored'
- ,
- PDERROR_MALFORMED_TAG =>
- '"%s" tag was used without any parameters, illegal'
- ,
- PDERROR_MULTIPLE_CATEGORY_TAGS =>
- 'package has multiple @category tags, ignoring "@category %s"'
- ,
- PDERROR_TEMPLATEDIR_DOESNT_EXIST =>
- 'template directory "%s" does not exist'
- ,
- PDERROR_UNTERMINATED_ENTITY =>
- 'entity &%s is unterminated'
- ,
- PDERROR_FUNCTION_HAS_NONAME =>
- 'function has no name (PHP error - test your file before parsing!)'
- ,
- PDERROR_CANNOT_EXTEND_SELF =>
- 'class %s cannot extend itself - TEST YOUR CODE BEFORE PARSING'
- ,
- PDERROR_DUMB_USES =>
- '@uses can only link to string data'
- ,
- PDERROR_UL_IN_UL =>
- 'ul/ol tags cannot be directly nested inside ul/ol, nest inside li'
- ,
- PDERROR_INVALID_VALUES =>
- 'command %s was passed "%s" but must be one of %s'
- ,
- PDERROR_NESTED_INTERNAL =>
- '{@internal}} cannot be nested inside {@internal}}'
- ,
- PDERROR_DANGEROUS_PHP_BUG_EXISTS =>
- 'Dangerous PHP Bug exists in PHP version %s that can be triggered ' .
- 'by this parse (see PHP Bug #%s and PEAR Bug #%s)'
- ,
- PDERROR_LOOP_RECURSION_LIMIT_REACHED =>
- 'An internal loop in PhpDocumentor has reached its preset ' .
- 'recursion limit, preventing a possible infinite loop condition.'
- );
-
- /**
- * encapsulates warning information
- *
- * @category ToolsAndUtilities
- * @package phpDocumentor
- * @subpackage Errors
- * @author Greg Beaver <cellog@php.net>
- * @copyright 2001-2008 Gregory Beaver
- * @license http://www.opensource.org/licenses/lgpl-license.php LGPL
- * @version Release: @VER@
- * @link http://www.phpdoc.org
- * @link http://pear.php.net/PhpDocumentor
- * @todo CS cleanup - change package to PhpDocumentor
- */
- class RecordWarning
- {
- /**
- * name of global variable that descriptors for this warning/error is kept
- * @var string
- */
- var $type = 'phpDocumentor_warning_descrip';
- /**
- * file this error occurred in
- * @var string
- */
- var $file = false;
- /**
- * line number of the file this error occurred in
- * @var integer
- */
- var $linenum;
- /**
- * error string
- * @var string
- */
- var $data;
- /**
- * error number
- * @see Errors.inc
- * @var string
- */
- var $num;
- /**
- * Constructor
- *
- * @param string $file filename this error occurred in ({@link $file})
- * @param integer $linenum line number this error occurred on ({@link $linenum})
- * @param integer $num Error number defined in {@link Errors.inc}
- * @param string $data... variable number of strings, up to 4,
- *
- * @todo CS Cleanup - do I need to add $data to the method signature?
- * to sprintf based on the error number
- */
- function RecordWarning($file, $linenum, $num)
- {
- $this->file = $file;
- $this->linenum = $linenum;
- $a = array('', '', '', '');
- if (func_num_args()>3) {
- for ($i=3;$i<func_num_args();$i++) {
- $a[$i - 3] = func_get_arg($i);
- }
- }
-
- $this->num = $num;
- $this->data =
- sprintf($GLOBALS[$this->type][$this->num], $a[0], $a[1], $a[2], $a[3]);
- $this->output();
- }
-
- /**
- * prints the warning
- *
- * @param string $string the warning to print
- *
- * @return void
- */
- function output($string = false)
- {
- if ($string) {
- if ($this->file) {
- return
- "WARNING in $this->file on line $this->linenum: $this->data\n";
- } else {
- return "WARNING: $this->data\n";
- }
- }
- if ($this->file) {
- phpDocumentor_out("WARNING in $this->file " .
- "on line $this->linenum: $this->data\n");
- } else {
- phpDocumentor_out("WARNING: $this->data\n");
- }
- flush();
- }
- }
-
- /**
- * encapsulates error information
- *
- * @category ToolsAndUtilities
- * @package phpDocumentor
- * @subpackage Errors
- * @author Greg Beaver <cellog@php.net>
- * @copyright 2001-2008 Gregory Beaver
- * @license http://www.opensource.org/licenses/lgpl-license.php LGPL
- * @version Release: @VER@
- * @link http://www.phpdoc.org
- * @link http://pear.php.net/PhpDocumentor
- * @todo CS cleanup - change package to PhpDocumentor
- */
- class RecordError extends RecordWarning
- {
- /**
- * name of global variable that descriptors for this warning/error is kept
- * @var string
- */
- var $type = 'phpDocumentor_error_descrip';
-
- /**
- * prints the error
- *
- * @param string $string the error to print
- *
- * @return string
- */
- function output($string = false)
- {
- if ($string) {
- if ($this->file) {
- return
- "\n\tERROR in $this->file on line $this->linenum: $this->data\n"
- ;
- } else {
- return "\n\tERROR: $this->data\n";
- }
- }
- if ($this->file) {
- phpDocumentor_out("\n\tERROR in $this->file " .
- "on line $this->linenum: $this->data\n");
- } else {
- phpDocumentor_out("\n\tERROR: $this->data\n");
- }
- flush();
- }
- }
-
- /**
- * contains all the errors/warnings
- *
- * @category ToolsAndUtilities
- * @package phpDocumentor
- * @subpackage Errors
- * @author Greg Beaver <cellog@php.net>
- * @copyright 2001-2008 Gregory Beaver
- * @license http://www.opensource.org/licenses/lgpl-license.php LGPL
- * @version Release: @VER@
- * @link http://www.phpdoc.org
- * @link http://pear.php.net/PhpDocumentor
- * @todo CS cleanup - change package to PhpDocumentor
- * @see $errors, $warnings
- */
- class ErrorTracker
- {
- /**
- * array of {@link RecordError}s
- * @var array
- */
- var $errors = array();
- /**
- * array of {@link RecordWarning}s
- * @var array
- */
- var $warnings = array();
- /**
- * @var string
- */
- var $curfile = '';
- /**
- * @var integer
- */
- var $linenum = 0;
-
- /**
- * index in {@link $errors} of last error triggered
- * @var integer|false
- */
- var $lasterror = false;
-
- /**
- * index in {@link $warnings} of last warning triggered
- * @var integer|false
- */
- var $lastwarning = false;
-
- /**
- * This function subscribes to two events in the Parser
- * in order to keep track of line number information and file name.
- *
- * @param integer $num parser-passed event
- * (see {@link PHPDOCUMENTOR_EVENT_NEWLINENUM,}
- * PHPDOCUMENTOR_EVENT_NEWFILE})
- * @param mixed $data either a line number if $num is
- * PHPDOCUMENTOR_EVENT_NEWLINENUM or a file name
- * if $num is PHPDOCUMENTOR_EVENT_NEWFILE
- *
- * @return void
- */
- function handleEvent($num,$data)
- {
- switch($num) {
- case PHPDOCUMENTOR_EVENT_NEWLINENUM :
- $this->linenum = $data;
- break;
-
- case PHPDOCUMENTOR_EVENT_NEWFILE :
- $this->linenum = 0;
- $this->curfile = $data;
- break;
-
- case 1000000635 : // debugging
- phpDocumentor_out($this->curfile .
- ' has ' . $this->linenum . ' lines' . "\n");
- flush();
- break;
- }
- }
-
- /**
- * add a new warning to the {@link $warnings} array
- *
- * @param integer $num error number from {@link Errors.inc}
- * @param string $data... up to 4 string parameters to sprintf()
- * into the error string for error number $num
- *
- * @return void
- * @todo CS Cleanup - do I need to add $data to the method signature?
- */
- function addWarning($num)
- {
- $a = array('', '', '', '');
- if (func_num_args()>1) {
- for ($i=1;$i<func_num_args();$i++) {
- $a[$i - 1] = func_get_arg($i);
- }
- }
- $this->warnings[] = new RecordWarning($this->curfile,
- $this->linenum, $num, $a[0], $a[1], $a[2], $a[3]);
- $this->lastwarning = count($this->warnings) - 1;
- }
-
- /**
- * add a new error to the {@link $errors} array
- *
- * @param integer $num error number from {@link Errors.inc}
- * @param string $data... up to 4 string parameters to sprintf()
- * into the error string for error number $num
- *
- * @return void
- * @todo CS Cleanup - do I need to add $data to the method signature?
- */
- function addError($num)
- {
- $a = array('', '', '', '');
- if (func_num_args()>1) {
- for ($i=1;$i<func_num_args();$i++) {
- $a[$i - 1] = func_get_arg($i);
- }
- }
- $this->errors[] = new RecordError($this->curfile,
- $this->linenum, $num, $a[0], $a[1], $a[2], $a[3]);
- $this->lasterror = count($this->errors) - 1;
- }
-
- /**
- * add a new error to the {@link $errors} array and returns the error string
- *
- * @param integer $num error number from {@link Errors.inc}
- * @param string $data... up to 4 string parameters to sprintf()
- * into the error string for error number $num
- *
- * @return void
- * @todo CS Cleanup - do I need to add $data to the method signature?
- */
- function addErrorReturn($num)
- {
- $a = array('', '', '', '');
- if (func_num_args()>1) {
- for ($i=1;$i<func_num_args();$i++) {
- $a[$i - 1] = func_get_arg($i);
- }
- }
- $this->errors[] = new RecordError($this->curfile,
- $this->linenum, $num, $a[0], $a[1], $a[2], $a[3], false);
- $this->lasterror = count($this->errors) - 1;
- }
-
- /**
- * Get sorted array of all warnings in parsing/conversion
- *
- * @return array
- */
- function &returnWarnings()
- {
- usort($this->warnings, array($this, "errorsort"));
- return $this->warnings;
- }
-
- /**
- * Get sorted array of all non-fatal errors in parsing/conversion
- *
- * @return array
- */
- function &returnErrors()
- {
- usort($this->errors, array($this, "errorsort"));
- return $this->errors;
- }
-
- /**
- * sort two errors
- *
- * @param RecordError|RecordWarning$a the first error/warning
- * @param RecordError|RecordWarning$b the second error/warning
- *
- * @return int
- * @access private
- */
- function errorsort($a, $b)
- {
- if (!$a->file) return -1;
- if (!$b->file) return 1;
- if ($a->file == $b->file) {
- if ($a->linenum == $b->linenum) return 0;
- if ($a->linenum < $b->linenum) return -1;
- return 1;
- }
- return strnatcasecmp($a->file, $b->file);
- }
-
- /**
- * Get the error message of the last error
- *
- * @return string
- */
- function returnLastError()
- {
- return $this->errors[$this->lasterror]->output(true);
- }
-
- /**
- * Get the warning message of the last warning
- *
- * @return string
- */
- function returnLastWarning()
- {
- return $this->warnings[$this->lastwarning]->output(true);
- }
- }
-
- /**
- * @global ErrorTracker $GLOBALS['phpDocumentor_errors']
- * @name $phpDocumentor_errors
- */
- $GLOBALS['phpDocumentor_errors'] = new ErrorTracker;
-
- /**
- * add an Error
- *
- * @param integer $num error number from {@link Errors.inc}
- * @param string $data... up to 4 string parameters to sprintf()
- * into the error string for error number $num
- *
- * @return void
- * @see ErrorTracker::addError()
- * @todo CS Cleanup - do I need to add $data to the method signature?
- */
- function addError($num)
- {
- global $phpDocumentor_errors;
- $a = array('', '', '', '');
- if (func_num_args()>1) {
- for ($i=1;$i<func_num_args();$i++) {
- $a[$i - 1] = func_get_arg($i);
- }
- }
- $phpDocumentor_errors->addError($num, $a[0], $a[1], $a[2], $a[3]);
- }
-
- /**
- * like {@link addError()} but exits parsing
- *
- * @param integer $num error number from {@link Errors.inc}
- * @param string $data... up to 4 string parameters to sprintf()
- * into the error string for error number $num
- *
- * @return void
- * @global ErrorTracker repository for all errors generated by phpDocumentor
- * @see ErrorTracker::addError()
- * @todo CS Cleanup - do I need to add $data to the method signature?
- */
- function addErrorDie($num)
- {
- global $phpDocumentor_errors;
- $a = array('', '', '', '');
- if (func_num_args()>1) {
- for ($i=1;$i<func_num_args();$i++) {
- $a[$i - 1] = func_get_arg($i);
- }
- }
- $phpDocumentor_errors->addErrorReturn($num, $a[0], $a[1], $a[2], $a[3]);
- echo $phpDocumentor_errors->returnLastError();
- die(1);
- }
-
- /**
- * add a Warning
- *
- * @param integer $num warning number from {@link Errors.inc}
- * @param string $data... up to 4 string parameters to sprintf()
- * into the error string for error number $num
- *
- * @return void
- * @global ErrorTracker repository for all errors generated by phpDocumentor
- * @see ErrorTracker::addWarning()
- * @todo CS Cleanup - do I need to add $data to the method signature?
- */
- function addWarning($num)
- {
- global $phpDocumentor_errors;
- $a = array('', '', '', '');
- if (func_num_args()>1) {
- for ($i=1;$i<func_num_args();$i++) {
- $a[$i - 1] = func_get_arg($i);
- }
- }
-
- $phpDocumentor_errors->addWarning($num, $a[0], $a[1], $a[2], $a[3]);
- }
- ?>
|