<commit_before>PHP Exception Interfaces
========================

Exception interfaces for PHP inspired by

* <NAME>ler's [Exception Best Practices in PHP 5.3](http://ralphschindler.com/2010/09/15/exception-best-practices-in-php-5-3) 
  blog post
* <NAME>on's [RFC for the 7XX Range of HTTP Status codes - Developer
  Errors](https://github.com/joho/7XX-rfc) project
* [This tweet](https://twitter.com/kentbeck/status/294689698360737792) from Kent
  Beck

Usage
-----

Please see the accompanying unit test for an example of usage.  See Ralph
Schindler's post, linked above, for background.<commit_msg>Adds example<commit_after>PHP Exception Interfaces
========================

Exception interfaces for PHP inspired by

* <NAME>ler's [Exception Best Practices in PHP 5.3](http://ralphschindler.com/2010/09/15/exception-best-practices-in-php-5-3) 
  blog post
* <NAME>'s [RFC for the 7XX Range of HTTP Status codes - Developer
  Errors](https://github.com/joho/7XX-rfc) project
* [This tweet](https://twitter.com/kentbeck/status/294689698360737792) from Kent
  Beck

Usage
-----

Simply create your own custom Exception, extend `\Exception`, and implement one
of the exception interfaces. Done!

```php
<?php

namespace Example;

use EI\EdgeCases\ThatsJustSilly;

class RidiculousException extends \Exception implements ThatsJustSilly {}
```

See Ralph Schindler's post, linked above, for background.
{'fraction_non_alphanumeric': 0.1407142857142857, 'fraction_numerical': 0.045714285714285714, 'mean_word_length': 4.765432098765432, 'pattern_counts': {'":': 0, '<': 8, '<?xml version=': 0, '>': 7, 'https://': 4, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1710044', 'n_tokens_mistral': 488, 'n_tokens_neox': 426, 'n_words': 129}