DefinitionException.php
31 lines
| 1 | <?php |
| 2 | /** |
| 3 | * PHP-DI |
| 4 | * |
| 5 | * @link http://php-di.org/ |
| 6 | * @copyright Matthieu Napoli (http://mnapoli.fr/) |
| 7 | * @license http://www.opensource.org/licenses/mit-license.php MIT (see the LICENSE file) |
| 8 | */ |
| 9 | |
| 10 | namespace Cybot\Dependencies\DI\Definition\Exception; |
| 11 | |
| 12 | use Cybot\Dependencies\DI\Debug; |
| 13 | use Cybot\Dependencies\DI\Definition\Definition; |
| 14 | |
| 15 | /** |
| 16 | * Invalid DI definitions |
| 17 | * |
| 18 | * @author Matthieu Napoli <matthieu@mnapoli.fr> |
| 19 | */ |
| 20 | class DefinitionException extends \Exception |
| 21 | { |
| 22 | public static function create(Definition $definition, $message) |
| 23 | { |
| 24 | return new self(sprintf( |
| 25 | "%s\nFull definition:\n%s", |
| 26 | $message, |
| 27 | Debug::dumpDefinition($definition) |
| 28 | )); |
| 29 | } |
| 30 | } |
| 31 |