<commit_before>[![Build Status](https://img.shields.io/travis/Fleshgrinder/php-assertion.svg?style=flat-square)](https://travis-ci.org/Fleshgrinder/php-assertion)
[![Packagist](https://img.shields.io/packagist/v/Fleshgrinder/assertion.svg?style=flat-square)](https://packagist.org/packages/fleshgrinder/assertion)
[![Packagist License](https://img.shields.io/packagist/l/Fleshgrinder/assertion.svg?style=flat-square)](https://packagist.org/packages/fleshgrinder/assertion)
# PHP Assertions
Library to ease defensive and design by contract (DbC) programming with [`assert()`](https://secure.php.net/assert) in PHP.

## Installation
Open a terminal, enter your project directory and execute the following command to add this package to your
 dependencies:

```bash
$ composer require fleshgrinder/assertion
```

This command requires you to have Composer installed globally, as explained in the
 [installation chapter](https://getcomposer.org/doc/00-intro.md) of the Composer documentation.

**NOTE:** Do not install the library as a development requirement because composer does not install them when a library
 is installed as a dependency of another library. You want your assertions to be executed at all times, except when the
 full application goes into production; which is managed through the [Configuration].

### Big Integers
The PHP extension [GNU Multiple Precision](https://secure.php.net/gmp) is required to validate big integer numbers.
 It is not required but a `E_USER_NOTICE` error is triggered if a big integer is encountered and the extension is not
 available. The installation on [Debian](https://www.debian.org/) based systems is usually as easy as executing<commit_msg>Shield.io URL must be lower-case to work.<commit_after>[![Build Status](https://img.shields.io/travis/Fleshgrinder/php-assertion.svg?style=flat-square)](https://travis-ci.org/Fleshgrinder/php-assertion)
[![Packagist](https://img.shields.io/packagist/v/fleshgrinder/assertion.svg?style=flat-square)](https://packagist.org/packages/fleshgrinder/assertion)
[![Packagist License](https://img.shields.io/packagist/l/fleshgrinder/assertion.svg?style=flat-square)](https://packagist.org/packages/fleshgrinder/assertion)
# PHP Assertions
Library to ease defensive and design by contract (DbC) programming with [`assert()`](https://secure.php.net/assert) in PHP.

## Installation
Open a terminal, enter your project directory and execute the following command to add this package to your
 dependencies:

```bash
$ composer require fleshgrinder/assertion
```

This command requires you to have Composer installed globally, as explained in the
 [installation chapter](https://getcomposer.org/doc/00-intro.md) of the Composer documentation.

**NOTE:** Do not install the library as a development requirement because composer does not install them when a library
 is installed as a dependency of another library. You want your assertions to be executed at all times, except when the
 full application goes into production; which is managed through the [Configuration].

### Big Integers
The PHP extension [GNU Multiple Precision](https://secure.php.net/gmp) is required to validate big integer numbers.
 It is not required but a `E_USER_NOTICE` error is triggered if a big integer is encountered and the extension is not
 available. The installation on [Debian](https://www.debian.org/) based systems is usually as easy as executing
{'fraction_non_alphanumeric': 0.10234604105571847, 'fraction_numerical': 0.0011730205278592375, 'mean_word_length': 5.509541984732825, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 20, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '33870', 'n_tokens_mistral': 960, 'n_tokens_neox': 919, 'n_words': 333}