Autoload.php (4397B)
1 <?php 2 /** 3 * PHP_CodeCoverage 4 * 5 * Copyright (c) 2009-2014, Sebastian Bergmann <sebastian@phpunit.de>. 6 * All rights reserved. 7 * 8 * Redistribution and use in source and binary forms, with or without 9 * modification, are permitted provided that the following conditions 10 * are met: 11 * 12 * * Redistributions of source code must retain the above copyright 13 * notice, this list of conditions and the following disclaimer. 14 * 15 * * Redistributions in binary form must reproduce the above copyright 16 * notice, this list of conditions and the following disclaimer in 17 * the documentation and/or other materials provided with the 18 * distribution. 19 * 20 * * Neither the name of Sebastian Bergmann nor the names of his 21 * contributors may be used to endorse or promote products derived 22 * from this software without specific prior written permission. 23 * 24 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 25 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 26 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 27 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 28 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 29 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 30 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 31 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 32 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 33 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 34 * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 35 * POSSIBILITY OF SUCH DAMAGE. 36 * 37 * @category PHP 38 * @package CodeCoverage 39 * @author Sebastian Bergmann <sebastian@phpunit.de> 40 * @copyright 2009-2010 Sebastian Bergmann <sebastian@phpunit.de> 41 * @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License 42 * @link http://github.com/sebastianbergmann/php-code-coverage 43 * @since File available since Release 1.1.0 44 */ 45 46 if (defined('PHPUNIT_COMPOSER_INSTALL')) { 47 return; 48 } 49 50 require_once 'File/Iterator/Autoload.php'; 51 require_once 'PHP/Token/Stream/Autoload.php'; 52 require_once 'Text/Template/Autoload.php'; 53 54 spl_autoload_register( 55 function ($class) 56 { 57 static $classes = NULL; 58 static $path = NULL; 59 60 if ($classes === NULL) { 61 $classes = array( 62 'php_codecoverage' => '/CodeCoverage.php', 63 'php_codecoverage_driver' => '/CodeCoverage/Driver.php', 64 'php_codecoverage_driver_xdebug' => '/CodeCoverage/Driver/Xdebug.php', 65 'php_codecoverage_exception' => '/CodeCoverage/Exception.php', 66 'php_codecoverage_filter' => '/CodeCoverage/Filter.php', 67 'php_codecoverage_report_clover' => '/CodeCoverage/Report/Clover.php', 68 'php_codecoverage_report_factory' => '/CodeCoverage/Report/Factory.php', 69 'php_codecoverage_report_html' => '/CodeCoverage/Report/HTML.php', 70 'php_codecoverage_report_html_renderer' => '/CodeCoverage/Report/HTML/Renderer.php', 71 'php_codecoverage_report_html_renderer_dashboard' => '/CodeCoverage/Report/HTML/Renderer/Dashboard.php', 72 'php_codecoverage_report_html_renderer_directory' => '/CodeCoverage/Report/HTML/Renderer/Directory.php', 73 'php_codecoverage_report_html_renderer_file' => '/CodeCoverage/Report/HTML/Renderer/File.php', 74 'php_codecoverage_report_node' => '/CodeCoverage/Report/Node.php', 75 'php_codecoverage_report_node_directory' => '/CodeCoverage/Report/Node/Directory.php', 76 'php_codecoverage_report_node_file' => '/CodeCoverage/Report/Node/File.php', 77 'php_codecoverage_report_node_iterator' => '/CodeCoverage/Report/Node/Iterator.php', 78 'php_codecoverage_report_php' => '/CodeCoverage/Report/PHP.php', 79 'php_codecoverage_report_text' => '/CodeCoverage/Report/Text.php', 80 'php_codecoverage_util' => '/CodeCoverage/Util.php', 81 'php_codecoverage_util_invalidargumenthelper' => '/CodeCoverage/Util/InvalidArgumentHelper.php', 82 'php_codecoverage_version' => '/CodeCoverage/Version.php' 83 ); 84 85 $path = dirname(dirname(__FILE__)); 86 } 87 88 $cn = strtolower($class); 89 90 if (isset($classes[$cn])) { 91 require $path . $classes[$cn]; 92 } 93 } 94 );