Compare commits

..

5 Commits

Author SHA1 Message Date
Sebastian Meyer 78dc647c98 Ignore unused code in library 2024-07-11 13:55:26 +02:00
Sebastian Meyer 8c63cfeeb7 Update README.md 2024-07-11 13:45:20 +02:00
Sebastian Meyer 209dd469c4 Release v2.1.1 2024-07-11 13:14:31 +02:00
Sebastian Meyer 09d3940a1f Update documentation 2024-07-11 13:08:56 +02:00
Sebastian Meyer c249ac7ae7 Add composer commands for tools 2024-07-11 13:08:28 +02:00
63 changed files with 1883 additions and 610 deletions

1
.gitignore vendored
View File

@ -1,6 +1,7 @@
/.phpdoc/cache/ /.phpdoc/cache/
/.vscode/ /.vscode/
/vendor/ /vendor/
.php-cs-fixer.cache
.php-cs-fixer.php .php-cs-fixer.php
composer.lock composer.lock
phpcs.xml phpcs.xml

View File

@ -6,6 +6,17 @@ Changelog
.. sidebar:: Table of Contents .. sidebar:: Table of Contents
.. contents:: .. contents::
v2.1.1
======
**New Features:**
* Added Composer commands for development tools (PHP_CodeSniffer, PHP-CS-Fixer, PHPStan, Psalm and phpDocumentor)
**Minor Changes:**
* Extended `documentation <https://opencultureconsulting.github.io/php-basics/>`_
v2.1.0 v2.1.0
====== ======
@ -54,8 +65,11 @@ v2.0.0
* Added new trait :php:trait:`OCC\Basics\Traits\OverloadingGetter` * Added new trait :php:trait:`OCC\Basics\Traits\OverloadingGetter`
* Added new trait :php:trait:`OCC\Basics\Traits\OverloadingSetter` * Added new trait :php:trait:`OCC\Basics\Traits\OverloadingSetter`
* Added new trait :php:trait:`OCC\Basics\Traits\TypeChecker` * Added new trait :php:trait:`OCC\Basics\Traits\TypeChecker`
* Extended API for all datastructures (see :php:trait:`OCC\Basics\DataStructures\Traits\StrictSplDatastructureTrait`) * Extended API for all datastructures (see :php:trait:`OCC\Basics\DataStructures\Traits\StrictSplDoublyLinkedListTrait`)
* Introduced :php:class:`OCC\Basics\DataStructures\Exceptions\InvalidDataTypeException` for strict datastructures * Introduced :php:class:`OCC\Basics\DataStructures\Exceptions\InvalidDataTypeException` for strict datastructures
**Minor Changes:**
* Extended `documentation <https://opencultureconsulting.github.io/php-basics/>`_ * Extended `documentation <https://opencultureconsulting.github.io/php-basics/>`_
v1.1.0 v1.1.0
@ -77,7 +91,7 @@ v1.1.0
v1.0.1 v1.0.1
====== ======
**New Features:** **Minor Changes:**
* Improved exception handling in :php:trait:`Singleton <OCC\Basics\Traits\Singleton>` trait * Improved exception handling in :php:trait:`Singleton <OCC\Basics\Traits\Singleton>` trait

View File

@ -10,13 +10,13 @@ The datastructures in this package are derived from their respective `Standard P
<https://www.php.net/spl.datastructures>`_ which they extend by the option to control the data types of items those <https://www.php.net/spl.datastructures>`_ which they extend by the option to control the data types of items those
datastructures can hold. datastructures can hold.
To restrict allowed data types for items, provide the constructor with an array of atomic types or fully qualified To restrict allowed data types for items provide the constructor with an array of atomic types or fully qualified class
class names you want to allow as item types. Available atomic types are `array`, `bool`, `callable`, `countable`, names (FQCN) you want to allow as item types. Available atomic types are `array`, `bool`, `callable`, `countable`,
`float` / `double`, `int` / `integer` / `long`, `iterable`, `null`, `numeric`, `object`, `resource`, `scalar` and `float` (or `double`), `int` (or `integer` or `long`), `iterable`, `null`, `numeric`, `object`, `resource`, `scalar`
`string`. and `string`.
Trying to add an item with a data type not on the list of allowed types to a strict datastructure will result in an Trying to add an item with a data type not on the list of allowed types to a strict datastructure will result in an
:php:class:`OCC\Basics\DataStructures\Exceptions\InvalidDataTypeException`. :php:class:`OCC\Basics\DataStructures\Exceptions\InvalidDataTypeException` being thrown.
All strict datastructures inherit the implementation of the `\ArrayAccess <https://www.php.net/arrayaccess>`_, All strict datastructures inherit the implementation of the `\ArrayAccess <https://www.php.net/arrayaccess>`_,
`\Countable <https://www.php.net/countable>`_ and `\Serializable <https://www.php.net/serializable>`_ interfaces. All `\Countable <https://www.php.net/countable>`_ and `\Serializable <https://www.php.net/serializable>`_ interfaces. All

View File

@ -6,8 +6,8 @@ Overview
The package currently contains classes for :doc:`datastructures`, :doc:`errorhandlers`, multiple :doc:`interfaces`, and The package currently contains classes for :doc:`datastructures`, :doc:`errorhandlers`, multiple :doc:`interfaces`, and
more generic :doc:`traits` for common use cases. They share the same design principles like property and method naming more generic :doc:`traits` for common use cases. They share the same design principles like property and method naming
schema, the highest coding standards of `PHPStan <https://phpstan.org/>`_ and `Psalm <https://psalm.dev/>`_, and full schema, the highest coding standards of `PHPStan <https://phpstan.org/>`_ and `Psalm <https://psalm.dev/>`_, and full
`PSR-12 <https://www.php-fig.org/psr/psr-12/>`_ compliance to make sure they can be combined and easily re-used in `PSR-12 <https://www.php-fig.org/psr/psr-12/>`_ compliance to make sure they can be combined and easily used in other
other projects. projects.
.. toctree:: .. toctree::
:maxdepth: 2 :maxdepth: 2

View File

@ -23,7 +23,7 @@ reading. Replace `{Property}` in the method's name with the name of the actual p
letter). letter).
Trying to access an undefined property or a property without corresponding "magic" getter method will result in an Trying to access an undefined property or a property without corresponding "magic" getter method will result in an
`\InvalidArgumentException <https://www.php.net/invalidargumentexception>`_. `\InvalidArgumentException <https://www.php.net/invalidargumentexception>`_ being thrown.
Example: If the property is named `$fooBar`, the "magic" method has to be `_magicGetFooBar()`. This method is then Example: If the property is named `$fooBar`, the "magic" method has to be `_magicGetFooBar()`. This method is then
called when `$fooBar` is read in a context where it normally would not be accessible. called when `$fooBar` is read in a context where it normally would not be accessible.
@ -41,7 +41,7 @@ writing. Replace `{Property}` in the method's name with the name of the actual p
letter). letter).
Trying to access an undefined property or a property without corresponding "magic" setter method will result in an Trying to access an undefined property or a property without corresponding "magic" setter method will result in an
`\InvalidArgumentException <https://www.php.net/invalidargumentexception>`_. `\InvalidArgumentException <https://www.php.net/invalidargumentexception>`_ being thrown.
Example: If the property is named `$fooBar`, the "magic" method has to be `_magicSetFooBar()`. This method is then Example: If the property is named `$fooBar`, the "magic" method has to be `_magicSetFooBar()`. This method is then
called when `$fooBar` is written to in a context where it normally would not be accessible. called when `$fooBar` is written to in a context where it normally would not be accessible.
@ -109,5 +109,5 @@ TypeChecker
This allows to set a list of allowed atomic data types and fully qualified class names. It also provides a method to This allows to set a list of allowed atomic data types and fully qualified class names. It also provides a method to
check if a value's data type matches at least one of these types. check if a value's data type matches at least one of these types.
Available atomic types are `array`, `bool`, `callable`, `countable`, `float` / `double`, `int` / `integer` / `long`, Available atomic types are `array`, `bool`, `callable`, `countable`, `float` (or `double`), `int` (or `integer` or
`iterable`, `null`, `numeric`, `object`, `resource`, `scalar` and `string`. `long`), `iterable`, `null`, `numeric`, `object`, `resource`, `scalar` and `string`.

View File

@ -9,7 +9,7 @@ Installation
Composer Composer
======== ========
The intended and recommended way of re-using this package is via `Composer <https://getcomposer.org/>`_. The following The intended and recommended way of using this package is via `Composer <https://getcomposer.org/>`_. The following
command will get you the latest version and make it a dependency of your project. It will also register all classes and command will get you the latest version and make it a dependency of your project. It will also register all classes and
traits with the autoloader to make them available inside the application. traits with the autoloader to make them available inside the application.
@ -23,8 +23,8 @@ the desired version constraint:
.. code-block:: shell .. code-block:: shell
# This will install the latest patch level version of 2.0 (i. e. >=2.0.0 && <2.1.0) # This will install the latest patch level version of 2.1 (i. e. >=2.1.0 && <2.2.0)
composer require "opencultureconsulting/basics:~2.0" composer require "opencultureconsulting/basics:~2.1"
All available versions as well as further information about :doc:`requirements` and dependencies can be found on All available versions as well as further information about :doc:`requirements` and dependencies can be found on
`Packagist <https://packagist.org/packages/opencultureconsulting/basics>`_. `Packagist <https://packagist.org/packages/opencultureconsulting/basics>`_.
@ -46,8 +46,8 @@ well:
.. code-block:: shell .. code-block:: shell
# This will clone the repository state at version "2.0.0" into the "basics" directory # This will clone the repository state at version "2.1.1" into the "basics" directory
git clone --branch=v2.0.0 https://github.com/opencultureconsulting/php-basics.git basics git clone --branch=v2.1.1 https://github.com/opencultureconsulting/php-basics.git basics
Be aware that you also need to make the classes and traits available in your application by either adding them to your Be aware that you also need to make the classes and traits available in your application by either adding them to your
autoloader or by including all files individually in PHP. autoloader or by including all files individually in PHP.

View File

@ -9,8 +9,8 @@ Environment
This package requires at least **PHP 8.1**. This package requires at least **PHP 8.1**.
It is highly recommended to use `Composer <https://getcomposer.org/>`_ for dependency management and autoloading, It is highly recommended to use `Composer <https://getcomposer.org/>`_ for dependency management and autoloading,
although it is technically not strictly required for re-using any of these classes and traits. But it certainly although it is technically not strictly required for using any of these classes and traits. But it certainly makes it a
makes it a lot easier! lot easier!
Dependencies Dependencies
============ ============

View File

@ -2,13 +2,15 @@
***A collection of generic classes and useful traits for PHP projects.*** ***A collection of generic classes and useful traits for PHP projects.***
The package currently contains classes for [type-sensitive data structures](src/DataStructures/), [error and exception handlers](src/ErrorHandlers/), multiple [traits implementing standard interfaces](src/Interfaces/), and more generic [traits for common use cases](src/Traits/). They share the same design principles like property and method naming schema, highest coding standards of [PHPStan](https://phpstan.org/) and [Psalm](https://psalm.dev/), and full [PSR-12](https://www.php-fig.org/psr/psr-12/) compliance to make sure they can be combined and easily re-used in other projects. The package currently contains classes for [type-sensitive data structures](src/DataStructures/), [error and exception handlers](src/ErrorHandlers/), multiple [traits implementing standard interfaces](src/Interfaces/), and more generic [traits for common use cases](src/Traits/). They share the same design principles like property and method naming schema, highest coding standards of [PHPStan](https://phpstan.org/) and [Psalm](https://psalm.dev/), and full [PSR-12](https://www.php-fig.org/psr/psr-12/) compliance to make sure they can be combined and easily used in other projects.
## Quick Start ## Quick Start
The intended and recommended way of re-using this package is via [Composer](https://getcomposer.org/). The following command will get you the latest version: The intended and recommended way of using this package is via [Composer](https://getcomposer.org/). The following command will get you the latest version:
composer require opencultureconsulting/basics ```shell
composer require opencultureconsulting/basics
```
All available versions as well as further information about requirements and dependencies can be found on [Packagist](https://packagist.org/packages/opencultureconsulting/basics). All available versions as well as further information about requirements and dependencies can be found on [Packagist](https://packagist.org/packages/opencultureconsulting/basics).

View File

@ -42,15 +42,49 @@
"php": "^8.1" "php": "^8.1"
}, },
"require-dev": { "require-dev": {
"phpstan/phpstan": "^1.10", "phpdocumentor/shim": "^3.5",
"phpstan/phpstan-strict-rules": "^1.5", "phpstan/phpstan": "^1.11",
"friendsofphp/php-cs-fixer": "^3.52", "phpstan/phpstan-strict-rules": "^1.6",
"squizlabs/php_codesniffer": "^3.9", "friendsofphp/php-cs-fixer": "^3.59",
"vimeo/psalm": "^5.23" "squizlabs/php_codesniffer": "^3.10",
"vimeo/psalm": "^5.25"
}, },
"autoload": { "autoload": {
"psr-4": { "psr-4": {
"OCC\\Basics\\": "src/" "OCC\\Basics\\": "src/"
} }
},
"config": {
"allow-plugins": {
"phpdocumentor/shim": true
}
},
"scripts": {
"php-cs-fixer:check": [
"@php vendor/bin/php-cs-fixer check"
],
"php-cs-fixer:fix": [
"@php vendor/bin/php-cs-fixer fix"
],
"phpcs:check": [
"@php vendor/bin/phpcs"
],
"phpdoc:build": [
"@php vendor/bin/phpdoc"
],
"phpstan:check": [
"@php vendor/bin/phpstan"
],
"psalm:check": [
"@php vendor/bin/psalm"
]
},
"scripts-descriptions": {
"php-cs-fixer:check": "Runs a code check with PHP Coding Standards Fixer and reports problems. If a custom configuration file '.php-cs-fixer.php' exists, it will be used instead of the default settings in '.php-cs-fixer.dist.php'.",
"php-cs-fixer:fix": "Runs a code check with PHP Coding Standards Fixer and tries to fix all issues. If a custom configuration file '.php-cs-fixer.php' exists, it will be used instead of the default settings in '.php-cs-fixer.dist.php'.",
"phpcs:check": "Runs a code check with PHP_CodeSniffer and reports problems. If a custom configuration file '.phpcs.xml' exists, it will be used instead of the default settings in '.phpcs.xml.dist'.",
"phpdoc:build": "Builds the documentation from source files in ./src and additional templates in .phpdoc/. If a custom configuration file 'phpdoc.xml' exists, it will be used instead of the default settings in 'phpdoc.dist.xml'.",
"phpstan:check": "Runs a code check with PHPStan static code analyzer and reports problems. If a custom configuration file 'phpstan.neon' exists, it will be used instead of the default settings in 'phpstan.dist.neon'.",
"psalm:check": "Runs a code check with Psalm static code analyzer and reports problems. If a custom configuration file 'psalm.xml' exists, it will be used instead of the default settings in 'psalm.xml.dist'."
} }
} }

View File

@ -209,6 +209,7 @@
<p class="phpdocumentor-summary">Common exception for type-sensitive datastructures.</p> <p class="phpdocumentor-summary">Common exception for type-sensitive datastructures.</p>
<section class="phpdocumentor-description"><p>Exception thrown if a value does not adhere to the defined list of valid <section class="phpdocumentor-description"><p>Exception thrown if a value does not adhere to the defined list of valid
data types.</p> data types.</p>
</section> </section>
@ -233,6 +234,8 @@ data types.</p>
<h3 id="toc"> <h3 id="toc">
Table of Contents Table of Contents
<a href="classes/OCC-Basics-DataStructures-Exceptions-InvalidDataTypeException.html#toc" class="headerlink"><i class="fas fa-link"></i></a> <a href="classes/OCC-Basics-DataStructures-Exceptions-InvalidDataTypeException.html#toc" class="headerlink"><i class="fas fa-link"></i></a>
@ -251,7 +254,6 @@ data types.</p>

View File

@ -195,7 +195,7 @@
<abbr title="\Iterator">Iterator</abbr> </span> <abbr title="\Iterator">Iterator</abbr> </span>
<span class="phpdocumentor-element__extends"> <span class="phpdocumentor-element__extends">
Uses uses
<a href="classes/OCC-Basics-Interfaces-IteratorTrait.html"><abbr title="\OCC\Basics\Interfaces\IteratorTrait">IteratorTrait</abbr></a> </span> <a href="classes/OCC-Basics-Interfaces-IteratorTrait.html"><abbr title="\OCC\Basics\Interfaces\IteratorTrait">IteratorTrait</abbr></a> </span>
</h2> </h2>
@ -214,6 +214,7 @@
<p class="phpdocumentor-summary">A type-sensitive, traversable array.</p> <p class="phpdocumentor-summary">A type-sensitive, traversable array.</p>
<section class="phpdocumentor-description"><p>Holds items as key/value pairs where keys have to be valid array keys while <section class="phpdocumentor-description"><p>Holds items as key/value pairs where keys have to be valid array keys while
values can be of any type. To restrict allowed data types for items, provide values can be of any type. To restrict allowed data types for items, provide
the constructor with an array of atomic types or fully qualified class the constructor with an array of atomic types or fully qualified class
@ -250,6 +251,8 @@ names.</p>
<h3 id="toc"> <h3 id="toc">
Table of Contents Table of Contents
<a href="classes/OCC-Basics-DataStructures-StrictArray.html#toc" class="headerlink"><i class="fas fa-link"></i></a> <a href="classes/OCC-Basics-DataStructures-StrictArray.html#toc" class="headerlink"><i class="fas fa-link"></i></a>
@ -279,231 +282,231 @@ names.</p>
</h4> </h4>
<dl class="phpdocumentor-table-of-contents"> <dl class="phpdocumentor-table-of-contents">
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method___construct">__construct()</a> <a class="" href="classes/OCC-Basics-DataStructures-StrictCollection.html#method___construct">__construct()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Create a type-sensitive collection of items.</dd> <dd>Create a type-sensitive collection of items.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_add">add()</a> <a class="" href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_add">add()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Add/insert a item at the specified index.</dd> <dd>Add/insert a item at the specified index.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-StrictArray.html#method_bottom">bottom()</a> <a class="" href="classes/OCC-Basics-DataStructures-StrictArray.html#method_bottom">bottom()</a>
<span> <span>
&nbsp;: <abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr> </span> &nbsp;: <abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr> </span>
</dt> </dt>
<dd>Peek at the first item of the array.</dd> <dd>Peek at the first item of the array.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_clear">clear()</a> <a class="" href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_clear">clear()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Clear the collection of any items.</dd> <dd>Clear the collection of any items.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Interfaces-CountableTrait.html#method_count">count()</a> <a class="" href="classes/OCC-Basics-Interfaces-CountableTrait.html#method_count">count()</a>
<span> <span>
&nbsp;: int<0, max> </span> &nbsp;: int<0, max> </span>
</dt> </dt>
<dd>Count the data items.</dd> <dd>Count the data items.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_current">current()</a> <a class="" href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_current">current()</a>
<span> <span>
&nbsp;: <abbr title="\OCC\Basics\Interfaces\TValue">TValue</abbr>|null </span> &nbsp;: <abbr title="\OCC\Basics\Interfaces\TValue">TValue</abbr>|null </span>
</dt> </dt>
<dd>Return the current item.</dd> <dd>Return the current item.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_get">get()</a> <a class="" href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_get">get()</a>
<span> <span>
&nbsp;: <abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr> </span> &nbsp;: <abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr> </span>
</dt> </dt>
<dd>Get the item at the specified index.</dd> <dd>Get the item at the specified index.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Traits-TypeChecker.html#method_getAllowedTypes">getAllowedTypes()</a> <a class="" href="classes/OCC-Basics-Traits-TypeChecker.html#method_getAllowedTypes">getAllowedTypes()</a>
<span> <span>
&nbsp;: array&lt;string|int, string&gt; </span> &nbsp;: array&lt;string|int, string&gt; </span>
</dt> </dt>
<dd>Get allowed data types.</dd> <dd>Get allowed data types.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Traits-TypeChecker.html#method_hasAllowedType">hasAllowedType()</a> <a class="" href="classes/OCC-Basics-Traits-TypeChecker.html#method_hasAllowedType">hasAllowedType()</a>
<span> <span>
&nbsp;: bool </span> &nbsp;: bool </span>
</dt> </dt>
<dd>Check if a value&#039;s data type is allowed.</dd> <dd>Check if a value&#039;s data type is allowed.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Traits-TypeChecker.html#method_isAllowedType">isAllowedType()</a> <a class="" href="classes/OCC-Basics-Traits-TypeChecker.html#method_isAllowedType">isAllowedType()</a>
<span> <span>
&nbsp;: bool </span> &nbsp;: bool </span>
</dt> </dt>
<dd>Check if a data type is allowed.</dd> <dd>Check if a data type is allowed.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_isEmpty">isEmpty()</a> <a class="" href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_isEmpty">isEmpty()</a>
<span> <span>
&nbsp;: bool </span> &nbsp;: bool </span>
</dt> </dt>
<dd>Check if collection is empty.</dd> <dd>Check if collection is empty.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_isList">isList()</a> <a class="" href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_isList">isList()</a>
<span> <span>
&nbsp;: bool </span> &nbsp;: bool </span>
</dt> </dt>
<dd>Check if this collection can be considered a list.</dd> <dd>Check if this collection can be considered a list.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_key">key()</a> <a class="" href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_key">key()</a>
<span> <span>
&nbsp;: string|int|null </span> &nbsp;: string|int|null </span>
</dt> </dt>
<dd>Return the current key.</dd> <dd>Return the current key.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_next">next()</a> <a class="" href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_next">next()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Move forward to next item.</dd> <dd>Move forward to next item.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetExists">offsetExists()</a> <a class="" href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetExists">offsetExists()</a>
<span> <span>
&nbsp;: bool </span> &nbsp;: bool </span>
</dt> </dt>
<dd>Check if the specified offset exists.</dd> <dd>Check if the specified offset exists.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetGet">offsetGet()</a> <a class="" href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetGet">offsetGet()</a>
<span> <span>
&nbsp;: <abbr title="\OCC\Basics\Interfaces\TValue">TValue</abbr>|null </span> &nbsp;: <abbr title="\OCC\Basics\Interfaces\TValue">TValue</abbr>|null </span>
</dt> </dt>
<dd>Retrieve data at the specified offset.</dd> <dd>Retrieve data at the specified offset.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetSet">offsetSet()</a> <a class="" href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_offsetSet">offsetSet()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Assign a value to the specified offset.</dd> <dd>Set the item at the specified offset.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetUnset">offsetUnset()</a> <a class="" href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetUnset">offsetUnset()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Unset the specified offset.</dd> <dd>Unset the specified offset.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-StrictArray.html#method_pop">pop()</a> <a class="" href="classes/OCC-Basics-DataStructures-StrictArray.html#method_pop">pop()</a>
<span> <span>
&nbsp;: <abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr> </span> &nbsp;: <abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr> </span>
</dt> </dt>
<dd>Pop the item from the end of the array.</dd> <dd>Pop the item from the end of the array.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_prev">prev()</a> <a class="" href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_prev">prev()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Move back to previous item.</dd> <dd>Move back to previous item.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-StrictArray.html#method_push">push()</a> <a class="" href="classes/OCC-Basics-DataStructures-StrictArray.html#method_push">push()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Push an item at the end of the array.</dd> <dd>Push an item at the end of the array.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_remove">remove()</a> <a class="" href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_remove">remove()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Remove an item from the collection.</dd> <dd>Remove an item from the collection.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_rewind">rewind()</a> <a class="" href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_rewind">rewind()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Rewind the iterator to the first item.</dd> <dd>Rewind the iterator to the first item.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_serialize">serialize()</a> <a class="" href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_serialize">serialize()</a>
<span> <span>
&nbsp;: string </span> &nbsp;: string </span>
</dt> </dt>
<dd>Get string representation of $this.</dd> <dd>Get string representation of $this.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_set">set()</a> <a class="" href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_set">set()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Set an item at the specified index.</dd> <dd>Set an item at the specified index.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Traits-TypeChecker.html#method_setAllowedTypes">setAllowedTypes()</a> <a class="" href="classes/OCC-Basics-Traits-TypeChecker.html#method_setAllowedTypes">setAllowedTypes()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Set allowed data types.</dd> <dd>Set allowed data types.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-StrictArray.html#method_shift">shift()</a> <a class="" href="classes/OCC-Basics-DataStructures-StrictArray.html#method_shift">shift()</a>
<span> <span>
&nbsp;: <abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr> </span> &nbsp;: <abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr> </span>
</dt> </dt>
<dd>Shift the item from the beginning of the array.</dd> <dd>Shift the item from the beginning of the array.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_toArray">toArray()</a> <a class="" href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_toArray">toArray()</a>
<span> <span>
&nbsp;: array&lt;string|int, <abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr>&gt; </span> &nbsp;: array&lt;string|int, <abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr>&gt; </span>
</dt> </dt>
<dd>Return array representation of collection.</dd> <dd>Return array representation of collection.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-StrictArray.html#method_top">top()</a> <a class="" href="classes/OCC-Basics-DataStructures-StrictArray.html#method_top">top()</a>
<span> <span>
&nbsp;: <abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr> </span> &nbsp;: <abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr> </span>
</dt> </dt>
<dd>Peek at the last item of the array.</dd> <dd>Peek at the last item of the array.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_toStrictList">toStrictList()</a> <a class="" href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_toStrictList">toStrictList()</a>
<span> <span>
&nbsp;: <a href="classes/OCC-Basics-DataStructures-StrictList.html"><abbr title="\OCC\Basics\DataStructures\StrictList">StrictList</abbr></a>&lt;string|int, <abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr>&gt; </span> &nbsp;: <a href="classes/OCC-Basics-DataStructures-StrictList.html"><abbr title="\OCC\Basics\DataStructures\StrictList">StrictList</abbr></a>&lt;string|int, <abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr>&gt; </span>
</dt> </dt>
<dd>Turn collection into a type-sensitive list.</dd> <dd>Turn collection into a type-sensitive list.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_unserialize">unserialize()</a> <a class="" href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_unserialize">unserialize()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Restore $this from string representation.</dd> <dd>Restore $this from string representation.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-StrictArray.html#method_unshift">unshift()</a> <a class="" href="classes/OCC-Basics-DataStructures-StrictArray.html#method_unshift">unshift()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Prepend the array with an item.</dd> <dd>Prepend the array with an item.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_valid">valid()</a> <a class="" href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_valid">valid()</a>
<span> <span>
&nbsp;: bool </span> &nbsp;: bool </span>
</dt> </dt>
@ -513,7 +516,6 @@ names.</p>
@ -552,6 +554,7 @@ names.</p>
<div class="phpdocumentor-label-line"> <div class="phpdocumentor-label-line">
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -602,6 +605,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -633,6 +638,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -675,6 +681,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -708,6 +716,7 @@ Possible values are:</p>
<h5 class="phpdocumentor-tag-list__heading" id="tags"> <h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags Tags
<a href="classes/OCC-Basics-DataStructures-StrictArray.html#method_bottom#tags" class="headerlink"><i class="fas fa-link"></i></a> <a href="classes/OCC-Basics-DataStructures-StrictArray.html#method_bottom#tags" class="headerlink"><i class="fas fa-link"></i></a>
@ -726,6 +735,8 @@ Possible values are:</p>
</dd> </dd>
</dl> </dl>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr></span> <span class="phpdocumentor-signature__response_type"><abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr></span>
@ -768,6 +779,9 @@ Possible values are:</p>
</article> </article>
@ -803,6 +817,9 @@ Possible values are:</p>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
@ -846,6 +863,9 @@ Possible values are:</p>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
@ -887,6 +907,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -919,6 +940,8 @@ Possible values are:</p>
</dd> </dd>
</dl> </dl>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr></span> <span class="phpdocumentor-signature__response_type"><abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr></span>
@ -961,6 +984,9 @@ Possible values are:</p>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
@ -1002,6 +1028,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -1017,6 +1044,8 @@ Possible values are:</p>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">bool</span> <span class="phpdocumentor-signature__response_type">bool</span>
@ -1057,6 +1086,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -1072,6 +1102,8 @@ Possible values are:</p>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">bool</span> <span class="phpdocumentor-signature__response_type">bool</span>
@ -1114,6 +1146,9 @@ Possible values are:</p>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
@ -1154,6 +1189,7 @@ Possible values are:</p>
<div class="phpdocumentor-label phpdocumentor-label--success"><span>API</span><span>Yes</span></div> <div class="phpdocumentor-label phpdocumentor-label--success"><span>API</span><span>Yes</span></div>
</div> </div>
<section class="phpdocumentor-description"><p>It is considered a list if all keys are consecutive integers starting <section class="phpdocumentor-description"><p>It is considered a list if all keys are consecutive integers starting
from <code class="prettyprint">0</code>.</p> from <code class="prettyprint">0</code>.</p>
</section> </section>
@ -1176,6 +1212,8 @@ from <code class="prettyprint">0</code>.</p>
</dd> </dd>
</dl> </dl>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">bool</span> <span class="phpdocumentor-signature__response_type">bool</span>
@ -1218,6 +1256,9 @@ from <code class="prettyprint">0</code>.</p>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
@ -1261,6 +1302,9 @@ from <code class="prettyprint">0</code>.</p>
</article> </article>
@ -1294,6 +1338,7 @@ from <code class="prettyprint">0</code>.</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -1309,6 +1354,8 @@ from <code class="prettyprint">0</code>.</p>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">bool</span> <span class="phpdocumentor-signature__response_type">bool</span>
@ -1349,6 +1396,7 @@ from <code class="prettyprint">0</code>.</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -1364,6 +1412,8 @@ from <code class="prettyprint">0</code>.</p>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><abbr title="\OCC\Basics\Interfaces\TValue">TValue</abbr>|null</span> <span class="phpdocumentor-signature__response_type"><abbr title="\OCC\Basics\Interfaces\TValue">TValue</abbr>|null</span>
@ -1382,28 +1432,29 @@ from <code class="prettyprint">0</code>.</p>
> >
<h4 class="phpdocumentor-element__name" id="method_offsetSet"> <h4 class="phpdocumentor-element__name" id="method_offsetSet">
offsetSet() offsetSet()
<a href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetSet" class="headerlink"><i class="fas fa-link"></i></a> <a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_offsetSet" class="headerlink"><i class="fas fa-link"></i></a>
</h4> </h4>
<aside class="phpdocumentor-element-found-in"> <aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Interfaces/ArrayAccessTrait.php"><a href="files/src-interfaces-arrayaccesstrait.html"><abbr title="src/Interfaces/ArrayAccessTrait.php">ArrayAccessTrait.php</abbr></a></abbr> <abbr class="phpdocumentor-element-found-in__file" title="src/DataStructures/StrictCollection.php"><a href="files/src-datastructures-strictcollection.html"><abbr title="src/DataStructures/StrictCollection.php">StrictCollection.php</abbr></a></abbr>
: :
<span class="phpdocumentor-element-found-in__line">93</span> <span class="phpdocumentor-element-found-in__line">179</span>
<a href="classes/OCC-Basics-DataStructures-StrictArray.html#source-view.93" class="phpdocumentor-element-found-in__source" data-line="93" data-modal="source-view" data-src="files/src/Interfaces/ArrayAccessTrait.php.txt"></a> <a href="classes/OCC-Basics-DataStructures-StrictArray.html#source-view.179" class="phpdocumentor-element-found-in__source" data-line="179" data-modal="source-view" data-src="files/src/DataStructures/StrictCollection.php.txt"></a>
</aside> </aside>
<p class="phpdocumentor-summary">Assign a value to the specified offset.</p> <p class="phpdocumentor-summary">Set the item at the specified offset.</p>
<code class="phpdocumentor-code phpdocumentor-signature "> <code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span> <span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__name">offsetSet</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string|int|null&nbsp;</span><span class="phpdocumentor-signature__argument__name">$offset</span></span><span class="phpdocumentor-signature__argument"><span>, </span><span class="phpdocumentor-signature__argument__return-type"><abbr title="\OCC\Basics\Interfaces\TValue">TValue</abbr>&nbsp;</span><span class="phpdocumentor-signature__argument__name">$value</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">void</span></code> <span class="phpdocumentor-signature__name">offsetSet</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string|int|null&nbsp;</span><span class="phpdocumentor-signature__argument__name">$offset</span></span><span class="phpdocumentor-signature__argument"><span>, </span><span class="phpdocumentor-signature__argument__return-type"><abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr>&nbsp;</span><span class="phpdocumentor-signature__argument__name">$value</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">void</span></code>
<div class="phpdocumentor-label-line"> <div class="phpdocumentor-label-line">
<div class="phpdocumentor-label phpdocumentor-label--success"><span>API</span><span>Yes</span></div> <div class="phpdocumentor-label phpdocumentor-label--success"><span>API</span><span>Yes</span></div>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -1411,22 +1462,51 @@ from <code class="prettyprint">0</code>.</p>
: <span class="phpdocumentor-signature__argument__return-type">string|int|null</span> : <span class="phpdocumentor-signature__argument__return-type">string|int|null</span>
</dt> </dt>
<dd class="phpdocumentor-argument-list__definition"> <dd class="phpdocumentor-argument-list__definition">
<section class="phpdocumentor-description"><p>The offset to assign to or NULL to append</p> <section class="phpdocumentor-description"><p>The offset being set</p>
</section> </section>
</dd> </dd>
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$value</span> <span class="phpdocumentor-signature__argument__name">$value</span>
: <span class="phpdocumentor-signature__argument__return-type"><abbr title="\OCC\Basics\Interfaces\TValue">TValue</abbr></span> : <span class="phpdocumentor-signature__argument__return-type"><abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr></span>
</dt> </dt>
<dd class="phpdocumentor-argument-list__definition"> <dd class="phpdocumentor-argument-list__definition">
<section class="phpdocumentor-description"><p>The value to set</p> <section class="phpdocumentor-description"><p>The new item for the offset</p>
</section> </section>
</dd> </dd>
</dl> </dl>
<h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags
<a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_offsetSet#tags" class="headerlink"><i class="fas fa-link"></i></a>
</h5>
<dl class="phpdocumentor-tag-list">
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">throws</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<span class="phpdocumentor-tag-link"><a href="classes/OCC-Basics-DataStructures-Exceptions-InvalidDataTypeException.html"><abbr title="\OCC\Basics\DataStructures\Exceptions\InvalidDataTypeException">InvalidDataTypeException</abbr></a></span>
<section class="phpdocumentor-description"><p>if <code class="prettyprint">$value</code> is not of allowed type</p>
</section>
</dd>
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">throws</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<span class="phpdocumentor-tag-link"><abbr title="\InvalidArgumentException">InvalidArgumentException</abbr></span>
<section class="phpdocumentor-description"><p>if <code class="prettyprint">$offset</code> is not a valid array key</p>
</section>
</dd>
</dl>
</article> </article>
@ -1460,6 +1540,7 @@ from <code class="prettyprint">0</code>.</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -1476,6 +1557,8 @@ from <code class="prettyprint">0</code>.</p>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -1509,6 +1592,7 @@ from <code class="prettyprint">0</code>.</p>
<h5 class="phpdocumentor-tag-list__heading" id="tags"> <h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags Tags
<a href="classes/OCC-Basics-DataStructures-StrictArray.html#method_pop#tags" class="headerlink"><i class="fas fa-link"></i></a> <a href="classes/OCC-Basics-DataStructures-StrictArray.html#method_pop#tags" class="headerlink"><i class="fas fa-link"></i></a>
@ -1527,6 +1611,8 @@ from <code class="prettyprint">0</code>.</p>
</dd> </dd>
</dl> </dl>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr></span> <span class="phpdocumentor-signature__response_type"><abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr></span>
@ -1569,6 +1655,9 @@ from <code class="prettyprint">0</code>.</p>
</article> </article>
@ -1602,6 +1691,7 @@ from <code class="prettyprint">0</code>.</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -1635,6 +1725,8 @@ from <code class="prettyprint">0</code>.</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -1666,6 +1758,7 @@ from <code class="prettyprint">0</code>.</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -1699,6 +1792,8 @@ from <code class="prettyprint">0</code>.</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -1732,6 +1827,9 @@ from <code class="prettyprint">0</code>.</p>
</article> </article>
@ -1765,6 +1863,9 @@ from <code class="prettyprint">0</code>.</p>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
@ -1806,6 +1907,7 @@ from <code class="prettyprint">0</code>.</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -1848,6 +1950,8 @@ from <code class="prettyprint">0</code>.</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -1879,6 +1983,7 @@ from <code class="prettyprint">0</code>.</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -1912,6 +2017,8 @@ from <code class="prettyprint">0</code>.</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -1945,6 +2052,7 @@ from <code class="prettyprint">0</code>.</p>
<h5 class="phpdocumentor-tag-list__heading" id="tags"> <h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags Tags
<a href="classes/OCC-Basics-DataStructures-StrictArray.html#method_shift#tags" class="headerlink"><i class="fas fa-link"></i></a> <a href="classes/OCC-Basics-DataStructures-StrictArray.html#method_shift#tags" class="headerlink"><i class="fas fa-link"></i></a>
@ -1963,6 +2071,8 @@ from <code class="prettyprint">0</code>.</p>
</dd> </dd>
</dl> </dl>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr></span> <span class="phpdocumentor-signature__response_type"><abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr></span>
@ -2005,6 +2115,9 @@ from <code class="prettyprint">0</code>.</p>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
@ -2048,6 +2161,7 @@ from <code class="prettyprint">0</code>.</p>
<h5 class="phpdocumentor-tag-list__heading" id="tags"> <h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags Tags
<a href="classes/OCC-Basics-DataStructures-StrictArray.html#method_top#tags" class="headerlink"><i class="fas fa-link"></i></a> <a href="classes/OCC-Basics-DataStructures-StrictArray.html#method_top#tags" class="headerlink"><i class="fas fa-link"></i></a>
@ -2066,6 +2180,8 @@ from <code class="prettyprint">0</code>.</p>
</dd> </dd>
</dl> </dl>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr></span> <span class="phpdocumentor-signature__response_type"><abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr></span>
@ -2108,6 +2224,7 @@ from <code class="prettyprint">0</code>.</p>
<h5 class="phpdocumentor-tag-list__heading" id="tags"> <h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags Tags
<a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_toStrictList#tags" class="headerlink"><i class="fas fa-link"></i></a> <a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_toStrictList#tags" class="headerlink"><i class="fas fa-link"></i></a>
@ -2134,6 +2251,8 @@ from <code class="prettyprint">0</code>.</p>
</dd> </dd>
</dl> </dl>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><a href="classes/OCC-Basics-DataStructures-StrictList.html"><abbr title="\OCC\Basics\DataStructures\StrictList">StrictList</abbr></a>&lt;string|int, <abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr>&gt;</span> <span class="phpdocumentor-signature__response_type"><a href="classes/OCC-Basics-DataStructures-StrictList.html"><abbr title="\OCC\Basics\DataStructures\StrictList">StrictList</abbr></a>&lt;string|int, <abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr>&gt;</span>
@ -2172,6 +2291,7 @@ from <code class="prettyprint">0</code>.</p>
<div class="phpdocumentor-label-line"> <div class="phpdocumentor-label-line">
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -2188,6 +2308,8 @@ from <code class="prettyprint">0</code>.</p>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -2219,6 +2341,7 @@ from <code class="prettyprint">0</code>.</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -2252,6 +2375,8 @@ from <code class="prettyprint">0</code>.</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -2285,6 +2410,9 @@ from <code class="prettyprint">0</code>.</p>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
@ -2409,39 +2537,39 @@ from <code class="prettyprint">0</code>.</p>
<li class="phpdocumentor-on-this-page-section__title">Methods</li> <li class="phpdocumentor-on-this-page-section__title">Methods</li>
<li> <li>
<ul class="phpdocumentor-list -clean"> <ul class="phpdocumentor-list -clean">
<li><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method___construct">__construct()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method___construct">__construct()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_add">add()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_add">add()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-StrictArray.html#method_bottom">bottom()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-StrictArray.html#method_bottom">bottom()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_clear">clear()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_clear">clear()</a></li>
<li><a href="classes/OCC-Basics-Interfaces-CountableTrait.html#method_count">count()</a></li> <li class=""><a href="classes/OCC-Basics-Interfaces-CountableTrait.html#method_count">count()</a></li>
<li><a href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_current">current()</a></li> <li class=""><a href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_current">current()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_get">get()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_get">get()</a></li>
<li><a href="classes/OCC-Basics-Traits-TypeChecker.html#method_getAllowedTypes">getAllowedTypes()</a></li> <li class=""><a href="classes/OCC-Basics-Traits-TypeChecker.html#method_getAllowedTypes">getAllowedTypes()</a></li>
<li><a href="classes/OCC-Basics-Traits-TypeChecker.html#method_hasAllowedType">hasAllowedType()</a></li> <li class=""><a href="classes/OCC-Basics-Traits-TypeChecker.html#method_hasAllowedType">hasAllowedType()</a></li>
<li><a href="classes/OCC-Basics-Traits-TypeChecker.html#method_isAllowedType">isAllowedType()</a></li> <li class=""><a href="classes/OCC-Basics-Traits-TypeChecker.html#method_isAllowedType">isAllowedType()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_isEmpty">isEmpty()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_isEmpty">isEmpty()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_isList">isList()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_isList">isList()</a></li>
<li><a href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_key">key()</a></li> <li class=""><a href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_key">key()</a></li>
<li><a href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_next">next()</a></li> <li class=""><a href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_next">next()</a></li>
<li><a href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetExists">offsetExists()</a></li> <li class=""><a href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetExists">offsetExists()</a></li>
<li><a href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetGet">offsetGet()</a></li> <li class=""><a href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetGet">offsetGet()</a></li>
<li><a href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetSet">offsetSet()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_offsetSet">offsetSet()</a></li>
<li><a href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetUnset">offsetUnset()</a></li> <li class=""><a href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetUnset">offsetUnset()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-StrictArray.html#method_pop">pop()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-StrictArray.html#method_pop">pop()</a></li>
<li><a href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_prev">prev()</a></li> <li class=""><a href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_prev">prev()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-StrictArray.html#method_push">push()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-StrictArray.html#method_push">push()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_remove">remove()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_remove">remove()</a></li>
<li><a href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_rewind">rewind()</a></li> <li class=""><a href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_rewind">rewind()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_serialize">serialize()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_serialize">serialize()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_set">set()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_set">set()</a></li>
<li><a href="classes/OCC-Basics-Traits-TypeChecker.html#method_setAllowedTypes">setAllowedTypes()</a></li> <li class=""><a href="classes/OCC-Basics-Traits-TypeChecker.html#method_setAllowedTypes">setAllowedTypes()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-StrictArray.html#method_shift">shift()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-StrictArray.html#method_shift">shift()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_toArray">toArray()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_toArray">toArray()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-StrictArray.html#method_top">top()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-StrictArray.html#method_top">top()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_toStrictList">toStrictList()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_toStrictList">toStrictList()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_unserialize">unserialize()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_unserialize">unserialize()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-StrictArray.html#method_unshift">unshift()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-StrictArray.html#method_unshift">unshift()</a></li>
<li><a href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_valid">valid()</a></li> <li class=""><a href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_valid">valid()</a></li>
</ul> </ul>
</li> </li>
</ul> </ul>

View File

@ -192,7 +192,7 @@
<abbr title="\ArrayAccess">ArrayAccess</abbr>, <abbr title="\Countable">Countable</abbr>, <abbr title="\Serializable">Serializable</abbr> </span> <abbr title="\ArrayAccess">ArrayAccess</abbr>, <abbr title="\Countable">Countable</abbr>, <abbr title="\Serializable">Serializable</abbr> </span>
<span class="phpdocumentor-element__extends"> <span class="phpdocumentor-element__extends">
Uses uses
<a href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html"><abbr title="\OCC\Basics\Interfaces\ArrayAccessTrait">ArrayAccessTrait</abbr></a>, <a href="classes/OCC-Basics-Interfaces-CountableTrait.html"><abbr title="\OCC\Basics\Interfaces\CountableTrait">CountableTrait</abbr></a>, <a href="classes/OCC-Basics-Traits-TypeChecker.html"><abbr title="\OCC\Basics\Traits\TypeChecker">TypeChecker</abbr></a> </span> <a href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html"><abbr title="\OCC\Basics\Interfaces\ArrayAccessTrait">ArrayAccessTrait</abbr></a>, <a href="classes/OCC-Basics-Interfaces-CountableTrait.html"><abbr title="\OCC\Basics\Interfaces\CountableTrait">CountableTrait</abbr></a>, <a href="classes/OCC-Basics-Traits-TypeChecker.html"><abbr title="\OCC\Basics\Traits\TypeChecker">TypeChecker</abbr></a> </span>
</h2> </h2>
@ -211,6 +211,7 @@
<p class="phpdocumentor-summary">A type-sensitive, unsorted collection.</p> <p class="phpdocumentor-summary">A type-sensitive, unsorted collection.</p>
<section class="phpdocumentor-description"><p>Holds items as key/value pairs where keys have to be valid array keys while <section class="phpdocumentor-description"><p>Holds items as key/value pairs where keys have to be valid array keys while
values can be of any type. To restrict allowed data types for items, provide values can be of any type. To restrict allowed data types for items, provide
the constructor with an array of atomic types or fully qualified class the constructor with an array of atomic types or fully qualified class
@ -247,6 +248,8 @@ names.</p>
<h3 id="toc"> <h3 id="toc">
Table of Contents Table of Contents
<a href="classes/OCC-Basics-DataStructures-StrictCollection.html#toc" class="headerlink"><i class="fas fa-link"></i></a> <a href="classes/OCC-Basics-DataStructures-StrictCollection.html#toc" class="headerlink"><i class="fas fa-link"></i></a>
@ -276,147 +279,147 @@ names.</p>
</h4> </h4>
<dl class="phpdocumentor-table-of-contents"> <dl class="phpdocumentor-table-of-contents">
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method___construct">__construct()</a> <a class="" href="classes/OCC-Basics-DataStructures-StrictCollection.html#method___construct">__construct()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Create a type-sensitive collection of items.</dd> <dd>Create a type-sensitive collection of items.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_add">add()</a> <a class="" href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_add">add()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Add/insert a item at the specified index.</dd> <dd>Add/insert a item at the specified index.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_clear">clear()</a> <a class="" href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_clear">clear()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Clear the collection of any items.</dd> <dd>Clear the collection of any items.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Interfaces-CountableTrait.html#method_count">count()</a> <a class="" href="classes/OCC-Basics-Interfaces-CountableTrait.html#method_count">count()</a>
<span> <span>
&nbsp;: int<0, max> </span> &nbsp;: int<0, max> </span>
</dt> </dt>
<dd>Count the data items.</dd> <dd>Count the data items.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_get">get()</a> <a class="" href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_get">get()</a>
<span> <span>
&nbsp;: <abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr> </span> &nbsp;: <abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr> </span>
</dt> </dt>
<dd>Get the item at the specified index.</dd> <dd>Get the item at the specified index.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Traits-TypeChecker.html#method_getAllowedTypes">getAllowedTypes()</a> <a class="" href="classes/OCC-Basics-Traits-TypeChecker.html#method_getAllowedTypes">getAllowedTypes()</a>
<span> <span>
&nbsp;: array&lt;string|int, string&gt; </span> &nbsp;: array&lt;string|int, string&gt; </span>
</dt> </dt>
<dd>Get allowed data types.</dd> <dd>Get allowed data types.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Traits-TypeChecker.html#method_hasAllowedType">hasAllowedType()</a> <a class="" href="classes/OCC-Basics-Traits-TypeChecker.html#method_hasAllowedType">hasAllowedType()</a>
<span> <span>
&nbsp;: bool </span> &nbsp;: bool </span>
</dt> </dt>
<dd>Check if a value&#039;s data type is allowed.</dd> <dd>Check if a value&#039;s data type is allowed.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Traits-TypeChecker.html#method_isAllowedType">isAllowedType()</a> <a class="" href="classes/OCC-Basics-Traits-TypeChecker.html#method_isAllowedType">isAllowedType()</a>
<span> <span>
&nbsp;: bool </span> &nbsp;: bool </span>
</dt> </dt>
<dd>Check if a data type is allowed.</dd> <dd>Check if a data type is allowed.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_isEmpty">isEmpty()</a> <a class="" href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_isEmpty">isEmpty()</a>
<span> <span>
&nbsp;: bool </span> &nbsp;: bool </span>
</dt> </dt>
<dd>Check if collection is empty.</dd> <dd>Check if collection is empty.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_isList">isList()</a> <a class="" href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_isList">isList()</a>
<span> <span>
&nbsp;: bool </span> &nbsp;: bool </span>
</dt> </dt>
<dd>Check if this collection can be considered a list.</dd> <dd>Check if this collection can be considered a list.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetExists">offsetExists()</a> <a class="" href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetExists">offsetExists()</a>
<span> <span>
&nbsp;: bool </span> &nbsp;: bool </span>
</dt> </dt>
<dd>Check if the specified offset exists.</dd> <dd>Check if the specified offset exists.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetGet">offsetGet()</a> <a class="" href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetGet">offsetGet()</a>
<span> <span>
&nbsp;: <abbr title="\OCC\Basics\Interfaces\TValue">TValue</abbr>|null </span> &nbsp;: <abbr title="\OCC\Basics\Interfaces\TValue">TValue</abbr>|null </span>
</dt> </dt>
<dd>Retrieve data at the specified offset.</dd> <dd>Retrieve data at the specified offset.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_offsetSet">offsetSet()</a> <a class="" href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_offsetSet">offsetSet()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Set the item at the specified offset.</dd> <dd>Set the item at the specified offset.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetUnset">offsetUnset()</a> <a class="" href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetUnset">offsetUnset()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Unset the specified offset.</dd> <dd>Unset the specified offset.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_remove">remove()</a> <a class="" href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_remove">remove()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Remove an item from the collection.</dd> <dd>Remove an item from the collection.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_serialize">serialize()</a> <a class="" href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_serialize">serialize()</a>
<span> <span>
&nbsp;: string </span> &nbsp;: string </span>
</dt> </dt>
<dd>Get string representation of $this.</dd> <dd>Get string representation of $this.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_set">set()</a> <a class="" href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_set">set()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Set an item at the specified index.</dd> <dd>Set an item at the specified index.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Traits-TypeChecker.html#method_setAllowedTypes">setAllowedTypes()</a> <a class="" href="classes/OCC-Basics-Traits-TypeChecker.html#method_setAllowedTypes">setAllowedTypes()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Set allowed data types.</dd> <dd>Set allowed data types.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_toArray">toArray()</a> <a class="" href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_toArray">toArray()</a>
<span> <span>
&nbsp;: array&lt;string|int, <abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr>&gt; </span> &nbsp;: array&lt;string|int, <abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr>&gt; </span>
</dt> </dt>
<dd>Return array representation of collection.</dd> <dd>Return array representation of collection.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_toStrictList">toStrictList()</a> <a class="" href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_toStrictList">toStrictList()</a>
<span> <span>
&nbsp;: <a href="classes/OCC-Basics-DataStructures-StrictList.html"><abbr title="\OCC\Basics\DataStructures\StrictList">StrictList</abbr></a>&lt;string|int, <abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr>&gt; </span> &nbsp;: <a href="classes/OCC-Basics-DataStructures-StrictList.html"><abbr title="\OCC\Basics\DataStructures\StrictList">StrictList</abbr></a>&lt;string|int, <abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr>&gt; </span>
</dt> </dt>
<dd>Turn collection into a type-sensitive list.</dd> <dd>Turn collection into a type-sensitive list.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_unserialize">unserialize()</a> <a class="" href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_unserialize">unserialize()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
@ -426,7 +429,6 @@ names.</p>
@ -465,6 +467,7 @@ names.</p>
<div class="phpdocumentor-label-line"> <div class="phpdocumentor-label-line">
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -515,6 +518,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -546,6 +551,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -588,6 +594,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -621,6 +629,9 @@ Possible values are:</p>
</article> </article>
@ -656,6 +667,9 @@ Possible values are:</p>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
@ -697,6 +711,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -729,6 +744,8 @@ Possible values are:</p>
</dd> </dd>
</dl> </dl>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr></span> <span class="phpdocumentor-signature__response_type"><abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr></span>
@ -771,6 +788,9 @@ Possible values are:</p>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
@ -812,6 +832,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -827,6 +848,8 @@ Possible values are:</p>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">bool</span> <span class="phpdocumentor-signature__response_type">bool</span>
@ -867,6 +890,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -882,6 +906,8 @@ Possible values are:</p>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">bool</span> <span class="phpdocumentor-signature__response_type">bool</span>
@ -924,6 +950,9 @@ Possible values are:</p>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
@ -964,6 +993,7 @@ Possible values are:</p>
<div class="phpdocumentor-label phpdocumentor-label--success"><span>API</span><span>Yes</span></div> <div class="phpdocumentor-label phpdocumentor-label--success"><span>API</span><span>Yes</span></div>
</div> </div>
<section class="phpdocumentor-description"><p>It is considered a list if all keys are consecutive integers starting <section class="phpdocumentor-description"><p>It is considered a list if all keys are consecutive integers starting
from <code class="prettyprint">0</code>.</p> from <code class="prettyprint">0</code>.</p>
</section> </section>
@ -986,6 +1016,8 @@ from <code class="prettyprint">0</code>.</p>
</dd> </dd>
</dl> </dl>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">bool</span> <span class="phpdocumentor-signature__response_type">bool</span>
@ -1026,6 +1058,7 @@ from <code class="prettyprint">0</code>.</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -1041,6 +1074,8 @@ from <code class="prettyprint">0</code>.</p>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">bool</span> <span class="phpdocumentor-signature__response_type">bool</span>
@ -1081,6 +1116,7 @@ from <code class="prettyprint">0</code>.</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -1096,6 +1132,8 @@ from <code class="prettyprint">0</code>.</p>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><abbr title="\OCC\Basics\Interfaces\TValue">TValue</abbr>|null</span> <span class="phpdocumentor-signature__response_type"><abbr title="\OCC\Basics\Interfaces\TValue">TValue</abbr>|null</span>
@ -1136,6 +1174,7 @@ from <code class="prettyprint">0</code>.</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -1188,6 +1227,8 @@ from <code class="prettyprint">0</code>.</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -1219,6 +1260,7 @@ from <code class="prettyprint">0</code>.</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -1235,6 +1277,8 @@ from <code class="prettyprint">0</code>.</p>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -1266,6 +1310,7 @@ from <code class="prettyprint">0</code>.</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -1299,6 +1344,8 @@ from <code class="prettyprint">0</code>.</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -1330,6 +1377,9 @@ from <code class="prettyprint">0</code>.</p>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
@ -1371,6 +1421,7 @@ from <code class="prettyprint">0</code>.</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -1413,6 +1464,8 @@ from <code class="prettyprint">0</code>.</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -1444,6 +1497,7 @@ from <code class="prettyprint">0</code>.</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -1477,6 +1531,8 @@ from <code class="prettyprint">0</code>.</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -1510,6 +1566,9 @@ from <code class="prettyprint">0</code>.</p>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
@ -1553,6 +1612,7 @@ from <code class="prettyprint">0</code>.</p>
<h5 class="phpdocumentor-tag-list__heading" id="tags"> <h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags Tags
<a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_toStrictList#tags" class="headerlink"><i class="fas fa-link"></i></a> <a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_toStrictList#tags" class="headerlink"><i class="fas fa-link"></i></a>
@ -1579,6 +1639,8 @@ from <code class="prettyprint">0</code>.</p>
</dd> </dd>
</dl> </dl>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><a href="classes/OCC-Basics-DataStructures-StrictList.html"><abbr title="\OCC\Basics\DataStructures\StrictList">StrictList</abbr></a>&lt;string|int, <abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr>&gt;</span> <span class="phpdocumentor-signature__response_type"><a href="classes/OCC-Basics-DataStructures-StrictList.html"><abbr title="\OCC\Basics\DataStructures\StrictList">StrictList</abbr></a>&lt;string|int, <abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr>&gt;</span>
@ -1617,6 +1679,7 @@ from <code class="prettyprint">0</code>.</p>
<div class="phpdocumentor-label-line"> <div class="phpdocumentor-label-line">
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -1633,6 +1696,8 @@ from <code class="prettyprint">0</code>.</p>
</article> </article>
</section> </section>
@ -1747,27 +1812,27 @@ from <code class="prettyprint">0</code>.</p>
<li class="phpdocumentor-on-this-page-section__title">Methods</li> <li class="phpdocumentor-on-this-page-section__title">Methods</li>
<li> <li>
<ul class="phpdocumentor-list -clean"> <ul class="phpdocumentor-list -clean">
<li><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method___construct">__construct()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method___construct">__construct()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_add">add()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_add">add()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_clear">clear()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_clear">clear()</a></li>
<li><a href="classes/OCC-Basics-Interfaces-CountableTrait.html#method_count">count()</a></li> <li class=""><a href="classes/OCC-Basics-Interfaces-CountableTrait.html#method_count">count()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_get">get()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_get">get()</a></li>
<li><a href="classes/OCC-Basics-Traits-TypeChecker.html#method_getAllowedTypes">getAllowedTypes()</a></li> <li class=""><a href="classes/OCC-Basics-Traits-TypeChecker.html#method_getAllowedTypes">getAllowedTypes()</a></li>
<li><a href="classes/OCC-Basics-Traits-TypeChecker.html#method_hasAllowedType">hasAllowedType()</a></li> <li class=""><a href="classes/OCC-Basics-Traits-TypeChecker.html#method_hasAllowedType">hasAllowedType()</a></li>
<li><a href="classes/OCC-Basics-Traits-TypeChecker.html#method_isAllowedType">isAllowedType()</a></li> <li class=""><a href="classes/OCC-Basics-Traits-TypeChecker.html#method_isAllowedType">isAllowedType()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_isEmpty">isEmpty()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_isEmpty">isEmpty()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_isList">isList()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_isList">isList()</a></li>
<li><a href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetExists">offsetExists()</a></li> <li class=""><a href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetExists">offsetExists()</a></li>
<li><a href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetGet">offsetGet()</a></li> <li class=""><a href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetGet">offsetGet()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_offsetSet">offsetSet()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_offsetSet">offsetSet()</a></li>
<li><a href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetUnset">offsetUnset()</a></li> <li class=""><a href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetUnset">offsetUnset()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_remove">remove()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_remove">remove()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_serialize">serialize()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_serialize">serialize()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_set">set()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_set">set()</a></li>
<li><a href="classes/OCC-Basics-Traits-TypeChecker.html#method_setAllowedTypes">setAllowedTypes()</a></li> <li class=""><a href="classes/OCC-Basics-Traits-TypeChecker.html#method_setAllowedTypes">setAllowedTypes()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_toArray">toArray()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_toArray">toArray()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_toStrictList">toStrictList()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_toStrictList">toStrictList()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_unserialize">unserialize()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-StrictCollection.html#method_unserialize">unserialize()</a></li>
</ul> </ul>
</li> </li>
</ul> </ul>

View File

@ -192,7 +192,7 @@
<span class="phpdocumentor-element__extends"> <span class="phpdocumentor-element__extends">
Uses uses
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html"><abbr title="\OCC\Basics\DataStructures\Traits\StrictSplDoublyLinkedListTrait">StrictSplDoublyLinkedListTrait</abbr></a> </span> <a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html"><abbr title="\OCC\Basics\DataStructures\Traits\StrictSplDoublyLinkedListTrait">StrictSplDoublyLinkedListTrait</abbr></a> </span>
</h2> </h2>
@ -211,6 +211,7 @@
<p class="phpdocumentor-summary">A type-sensitive, taversable list.</p> <p class="phpdocumentor-summary">A type-sensitive, taversable list.</p>
<section class="phpdocumentor-description"><p>Extends <a href="https://www.php.net/spldoublylinkedlist">\SplDoublyLinkedList</a> with <section class="phpdocumentor-description"><p>Extends <a href="https://www.php.net/spldoublylinkedlist">\SplDoublyLinkedList</a> with
an option to restrict the allowed data types for list items by providing the an option to restrict the allowed data types for list items by providing the
constructor with an array of atomic types or fully qualified class names.</p> constructor with an array of atomic types or fully qualified class names.</p>
@ -245,6 +246,8 @@ constructor with an array of atomic types or fully qualified class names.</p>
<h3 id="toc"> <h3 id="toc">
Table of Contents Table of Contents
<a href="classes/OCC-Basics-DataStructures-StrictList.html#toc" class="headerlink"><i class="fas fa-link"></i></a> <a href="classes/OCC-Basics-DataStructures-StrictList.html#toc" class="headerlink"><i class="fas fa-link"></i></a>
@ -267,98 +270,98 @@ constructor with an array of atomic types or fully qualified class names.</p>
</h4> </h4>
<dl class="phpdocumentor-table-of-contents"> <dl class="phpdocumentor-table-of-contents">
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method___construct">__construct()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method___construct">__construct()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Create a type-sensitive, traversable list of items.</dd> <dd>Create a type-sensitive, traversable list of items.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_add">add()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_add">add()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Add/insert a new item at the specified offset.</dd> <dd>Add/insert a new item at the specified offset.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_append">append()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_append">append()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Append items at the end of the list.</dd> <dd>Append items at the end of the list.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_clear">clear()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_clear">clear()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Clear the list of any items.</dd> <dd>Clear the list of any items.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_get">get()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_get">get()</a>
<span> <span>
&nbsp;: <abbr title="\OCC\Basics\DataStructures\Traits\AllowedType">AllowedType</abbr> </span> &nbsp;: <abbr title="\OCC\Basics\DataStructures\Traits\AllowedType">AllowedType</abbr> </span>
</dt> </dt>
<dd>Get the item at the specified index.</dd> <dd>Get the item at the specified index.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_isList">isList()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_isList">isList()</a>
<span> <span>
&nbsp;: true </span> &nbsp;: true </span>
</dt> </dt>
<dd>Check if this can be considered a list.</dd> <dd>Check if this can be considered a list.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_offsetSet">offsetSet()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_offsetSet">offsetSet()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Set the item at the specified offset.</dd> <dd>Set the item at the specified offset.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_prepend">prepend()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_prepend">prepend()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Prepend items at the start of the list.</dd> <dd>Prepend items at the start of the list.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_push">push()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_push">push()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Push an item at the end of the list.</dd> <dd>Push an item at the end of the list.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_remove">remove()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_remove">remove()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Remove an item from the list.</dd> <dd>Remove an item from the list.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_set">set()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_set">set()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Set an item at the specified index.</dd> <dd>Set an item at the specified index.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_toArray">toArray()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_toArray">toArray()</a>
<span> <span>
&nbsp;: array&lt;int, <abbr title="\OCC\Basics\DataStructures\Traits\AllowedType">AllowedType</abbr>&gt; </span> &nbsp;: array&lt;int, <abbr title="\OCC\Basics\DataStructures\Traits\AllowedType">AllowedType</abbr>&gt; </span>
</dt> </dt>
<dd>Return array representation of list.</dd> <dd>Return array representation of list.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_toStrictCollection">toStrictCollection()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_toStrictCollection">toStrictCollection()</a>
<span> <span>
&nbsp;: <a href="classes/OCC-Basics-DataStructures-StrictCollection.html"><abbr title="\OCC\Basics\DataStructures\StrictCollection">StrictCollection</abbr></a>&lt;string|int, <abbr title="\OCC\Basics\DataStructures\Traits\AllowedType">AllowedType</abbr>&gt; </span> &nbsp;: <a href="classes/OCC-Basics-DataStructures-StrictCollection.html"><abbr title="\OCC\Basics\DataStructures\StrictCollection">StrictCollection</abbr></a>&lt;string|int, <abbr title="\OCC\Basics\DataStructures\Traits\AllowedType">AllowedType</abbr>&gt; </span>
</dt> </dt>
<dd>Turn list into a type-sensitive collection.</dd> <dd>Turn list into a type-sensitive collection.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_unshift">unshift()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_unshift">unshift()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
@ -368,7 +371,6 @@ constructor with an array of atomic types or fully qualified class names.</p>
@ -407,6 +409,7 @@ constructor with an array of atomic types or fully qualified class names.</p>
<div class="phpdocumentor-label-line"> <div class="phpdocumentor-label-line">
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -457,6 +460,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -488,6 +493,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -540,6 +546,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -571,6 +579,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -604,6 +613,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -637,6 +648,9 @@ Possible values are:</p>
</article> </article>
@ -670,6 +684,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -702,6 +717,8 @@ Possible values are:</p>
</dd> </dd>
</dl> </dl>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><abbr title="\OCC\Basics\DataStructures\Traits\AllowedType">AllowedType</abbr></span> <span class="phpdocumentor-signature__response_type"><abbr title="\OCC\Basics\DataStructures\Traits\AllowedType">AllowedType</abbr></span>
@ -744,6 +761,9 @@ Possible values are:</p>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
@ -785,6 +805,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -837,6 +858,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -868,6 +891,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -901,6 +925,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -932,6 +958,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -965,6 +992,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -996,6 +1025,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -1029,6 +1059,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -1060,6 +1092,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -1102,6 +1135,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -1135,6 +1170,9 @@ Possible values are:</p>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
@ -1178,6 +1216,9 @@ Possible values are:</p>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
@ -1219,6 +1260,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -1252,6 +1294,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
</section> </section>
@ -1366,20 +1410,20 @@ Possible values are:</p>
<li class="phpdocumentor-on-this-page-section__title">Methods</li> <li class="phpdocumentor-on-this-page-section__title">Methods</li>
<li> <li>
<ul class="phpdocumentor-list -clean"> <ul class="phpdocumentor-list -clean">
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method___construct">__construct()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method___construct">__construct()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_add">add()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_add">add()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_append">append()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_append">append()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_clear">clear()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_clear">clear()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_get">get()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_get">get()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_isList">isList()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_isList">isList()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_offsetSet">offsetSet()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_offsetSet">offsetSet()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_prepend">prepend()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_prepend">prepend()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_push">push()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_push">push()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_remove">remove()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_remove">remove()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_set">set()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_set">set()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_toArray">toArray()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_toArray">toArray()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_toStrictCollection">toStrictCollection()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_toStrictCollection">toStrictCollection()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_unshift">unshift()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_unshift">unshift()</a></li>
</ul> </ul>
</li> </li>
</ul> </ul>

View File

@ -192,7 +192,7 @@
<span class="phpdocumentor-element__extends"> <span class="phpdocumentor-element__extends">
Uses uses
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html"><abbr title="\OCC\Basics\DataStructures\Traits\StrictSplDoublyLinkedListTrait">StrictSplDoublyLinkedListTrait</abbr></a> </span> <a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html"><abbr title="\OCC\Basics\DataStructures\Traits\StrictSplDoublyLinkedListTrait">StrictSplDoublyLinkedListTrait</abbr></a> </span>
</h2> </h2>
@ -211,6 +211,7 @@
<p class="phpdocumentor-summary">A type-sensitive, taversable queue (FIFO).</p> <p class="phpdocumentor-summary">A type-sensitive, taversable queue (FIFO).</p>
<section class="phpdocumentor-description"><p>Extends <a href="https://www.php.net/splqueue">\SplQueue</a> with an option to restrict <section class="phpdocumentor-description"><p>Extends <a href="https://www.php.net/splqueue">\SplQueue</a> with an option to restrict
the allowed data types for list items by providing the constructor with an the allowed data types for list items by providing the constructor with an
array of atomic types or fully qualified class names.</p> array of atomic types or fully qualified class names.</p>
@ -245,6 +246,8 @@ array of atomic types or fully qualified class names.</p>
<h3 id="toc"> <h3 id="toc">
Table of Contents Table of Contents
<a href="classes/OCC-Basics-DataStructures-StrictQueue.html#toc" class="headerlink"><i class="fas fa-link"></i></a> <a href="classes/OCC-Basics-DataStructures-StrictQueue.html#toc" class="headerlink"><i class="fas fa-link"></i></a>
@ -267,112 +270,112 @@ array of atomic types or fully qualified class names.</p>
</h4> </h4>
<dl class="phpdocumentor-table-of-contents"> <dl class="phpdocumentor-table-of-contents">
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method___construct">__construct()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method___construct">__construct()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Create a type-sensitive, traversable list of items.</dd> <dd>Create a type-sensitive, traversable list of items.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_add">add()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_add">add()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Add/insert a new item at the specified offset.</dd> <dd>Add/insert a new item at the specified offset.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_append">append()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_append">append()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Append items at the end of the list.</dd> <dd>Append items at the end of the list.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_clear">clear()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_clear">clear()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Clear the list of any items.</dd> <dd>Clear the list of any items.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-StrictQueue.html#method_dequeue">dequeue()</a> <a class="" href="classes/OCC-Basics-DataStructures-StrictQueue.html#method_dequeue">dequeue()</a>
<span> <span>
&nbsp;: <abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr> </span> &nbsp;: <abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr> </span>
</dt> </dt>
<dd>Dequeue an item from the queue.</dd> <dd>Dequeue an item from the queue.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-StrictQueue.html#method_enqueue">enqueue()</a> <a class="" href="classes/OCC-Basics-DataStructures-StrictQueue.html#method_enqueue">enqueue()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Add an item to the queue.</dd> <dd>Add an item to the queue.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_get">get()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_get">get()</a>
<span> <span>
&nbsp;: <abbr title="\OCC\Basics\DataStructures\Traits\AllowedType">AllowedType</abbr> </span> &nbsp;: <abbr title="\OCC\Basics\DataStructures\Traits\AllowedType">AllowedType</abbr> </span>
</dt> </dt>
<dd>Get the item at the specified index.</dd> <dd>Get the item at the specified index.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_isList">isList()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_isList">isList()</a>
<span> <span>
&nbsp;: true </span> &nbsp;: true </span>
</dt> </dt>
<dd>Check if this can be considered a list.</dd> <dd>Check if this can be considered a list.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_offsetSet">offsetSet()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_offsetSet">offsetSet()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Set the item at the specified offset.</dd> <dd>Set the item at the specified offset.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_prepend">prepend()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_prepend">prepend()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Prepend items at the start of the list.</dd> <dd>Prepend items at the start of the list.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_push">push()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_push">push()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Push an item at the end of the list.</dd> <dd>Push an item at the end of the list.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_remove">remove()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_remove">remove()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Remove an item from the list.</dd> <dd>Remove an item from the list.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_set">set()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_set">set()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Set an item at the specified index.</dd> <dd>Set an item at the specified index.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_toArray">toArray()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_toArray">toArray()</a>
<span> <span>
&nbsp;: array&lt;int, <abbr title="\OCC\Basics\DataStructures\Traits\AllowedType">AllowedType</abbr>&gt; </span> &nbsp;: array&lt;int, <abbr title="\OCC\Basics\DataStructures\Traits\AllowedType">AllowedType</abbr>&gt; </span>
</dt> </dt>
<dd>Return array representation of list.</dd> <dd>Return array representation of list.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_toStrictCollection">toStrictCollection()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_toStrictCollection">toStrictCollection()</a>
<span> <span>
&nbsp;: <a href="classes/OCC-Basics-DataStructures-StrictCollection.html"><abbr title="\OCC\Basics\DataStructures\StrictCollection">StrictCollection</abbr></a>&lt;string|int, <abbr title="\OCC\Basics\DataStructures\Traits\AllowedType">AllowedType</abbr>&gt; </span> &nbsp;: <a href="classes/OCC-Basics-DataStructures-StrictCollection.html"><abbr title="\OCC\Basics\DataStructures\StrictCollection">StrictCollection</abbr></a>&lt;string|int, <abbr title="\OCC\Basics\DataStructures\Traits\AllowedType">AllowedType</abbr>&gt; </span>
</dt> </dt>
<dd>Turn list into a type-sensitive collection.</dd> <dd>Turn list into a type-sensitive collection.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_unshift">unshift()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_unshift">unshift()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
@ -382,7 +385,6 @@ array of atomic types or fully qualified class names.</p>
@ -421,6 +423,7 @@ array of atomic types or fully qualified class names.</p>
<div class="phpdocumentor-label-line"> <div class="phpdocumentor-label-line">
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -471,6 +474,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -502,6 +507,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -554,6 +560,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -585,6 +593,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -618,6 +627,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -651,6 +662,9 @@ Possible values are:</p>
</article> </article>
@ -686,6 +700,7 @@ Possible values are:</p>
<h5 class="phpdocumentor-tag-list__heading" id="tags"> <h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags Tags
<a href="classes/OCC-Basics-DataStructures-StrictQueue.html#method_dequeue#tags" class="headerlink"><i class="fas fa-link"></i></a> <a href="classes/OCC-Basics-DataStructures-StrictQueue.html#method_dequeue#tags" class="headerlink"><i class="fas fa-link"></i></a>
@ -704,6 +719,8 @@ Possible values are:</p>
</dd> </dd>
</dl> </dl>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr></span> <span class="phpdocumentor-signature__response_type"><abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr></span>
@ -744,6 +761,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -777,6 +795,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -808,6 +828,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -840,6 +861,8 @@ Possible values are:</p>
</dd> </dd>
</dl> </dl>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><abbr title="\OCC\Basics\DataStructures\Traits\AllowedType">AllowedType</abbr></span> <span class="phpdocumentor-signature__response_type"><abbr title="\OCC\Basics\DataStructures\Traits\AllowedType">AllowedType</abbr></span>
@ -882,6 +905,9 @@ Possible values are:</p>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
@ -923,6 +949,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -975,6 +1002,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -1006,6 +1035,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -1039,6 +1069,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -1070,6 +1102,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -1103,6 +1136,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -1134,6 +1169,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -1167,6 +1203,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -1198,6 +1236,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -1240,6 +1279,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -1273,6 +1314,9 @@ Possible values are:</p>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
@ -1316,6 +1360,9 @@ Possible values are:</p>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
@ -1357,6 +1404,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -1390,6 +1438,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
</section> </section>
@ -1504,22 +1554,22 @@ Possible values are:</p>
<li class="phpdocumentor-on-this-page-section__title">Methods</li> <li class="phpdocumentor-on-this-page-section__title">Methods</li>
<li> <li>
<ul class="phpdocumentor-list -clean"> <ul class="phpdocumentor-list -clean">
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method___construct">__construct()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method___construct">__construct()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_add">add()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_add">add()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_append">append()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_append">append()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_clear">clear()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_clear">clear()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-StrictQueue.html#method_dequeue">dequeue()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-StrictQueue.html#method_dequeue">dequeue()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-StrictQueue.html#method_enqueue">enqueue()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-StrictQueue.html#method_enqueue">enqueue()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_get">get()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_get">get()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_isList">isList()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_isList">isList()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_offsetSet">offsetSet()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_offsetSet">offsetSet()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_prepend">prepend()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_prepend">prepend()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_push">push()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_push">push()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_remove">remove()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_remove">remove()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_set">set()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_set">set()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_toArray">toArray()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_toArray">toArray()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_toStrictCollection">toStrictCollection()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_toStrictCollection">toStrictCollection()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_unshift">unshift()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_unshift">unshift()</a></li>
</ul> </ul>
</li> </li>
</ul> </ul>

View File

@ -192,7 +192,7 @@
<span class="phpdocumentor-element__extends"> <span class="phpdocumentor-element__extends">
Uses uses
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html"><abbr title="\OCC\Basics\DataStructures\Traits\StrictSplDoublyLinkedListTrait">StrictSplDoublyLinkedListTrait</abbr></a> </span> <a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html"><abbr title="\OCC\Basics\DataStructures\Traits\StrictSplDoublyLinkedListTrait">StrictSplDoublyLinkedListTrait</abbr></a> </span>
</h2> </h2>
@ -211,6 +211,7 @@
<p class="phpdocumentor-summary">A type-sensitive, taversable stack (LIFO).</p> <p class="phpdocumentor-summary">A type-sensitive, taversable stack (LIFO).</p>
<section class="phpdocumentor-description"><p>Extends <a href="https://www.php.net/splstack">\SplStack</a> with an option to restrict <section class="phpdocumentor-description"><p>Extends <a href="https://www.php.net/splstack">\SplStack</a> with an option to restrict
the allowed data types for list items by providing the constructor with an the allowed data types for list items by providing the constructor with an
array of atomic types or fully qualified class names.</p> array of atomic types or fully qualified class names.</p>
@ -245,6 +246,8 @@ array of atomic types or fully qualified class names.</p>
<h3 id="toc"> <h3 id="toc">
Table of Contents Table of Contents
<a href="classes/OCC-Basics-DataStructures-StrictStack.html#toc" class="headerlink"><i class="fas fa-link"></i></a> <a href="classes/OCC-Basics-DataStructures-StrictStack.html#toc" class="headerlink"><i class="fas fa-link"></i></a>
@ -267,112 +270,112 @@ array of atomic types or fully qualified class names.</p>
</h4> </h4>
<dl class="phpdocumentor-table-of-contents"> <dl class="phpdocumentor-table-of-contents">
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method___construct">__construct()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method___construct">__construct()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Create a type-sensitive, traversable list of items.</dd> <dd>Create a type-sensitive, traversable list of items.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_add">add()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_add">add()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Add/insert a new item at the specified offset.</dd> <dd>Add/insert a new item at the specified offset.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_append">append()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_append">append()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Append items at the end of the list.</dd> <dd>Append items at the end of the list.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_clear">clear()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_clear">clear()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Clear the list of any items.</dd> <dd>Clear the list of any items.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_get">get()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_get">get()</a>
<span> <span>
&nbsp;: <abbr title="\OCC\Basics\DataStructures\Traits\AllowedType">AllowedType</abbr> </span> &nbsp;: <abbr title="\OCC\Basics\DataStructures\Traits\AllowedType">AllowedType</abbr> </span>
</dt> </dt>
<dd>Get the item at the specified index.</dd> <dd>Get the item at the specified index.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_isList">isList()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_isList">isList()</a>
<span> <span>
&nbsp;: true </span> &nbsp;: true </span>
</dt> </dt>
<dd>Check if this can be considered a list.</dd> <dd>Check if this can be considered a list.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_offsetSet">offsetSet()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_offsetSet">offsetSet()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Set the item at the specified offset.</dd> <dd>Set the item at the specified offset.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_prepend">prepend()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_prepend">prepend()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Prepend items at the start of the list.</dd> <dd>Prepend items at the start of the list.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_push">push()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_push">push()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Push an item at the end of the list.</dd> <dd>Push an item at the end of the list.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_remove">remove()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_remove">remove()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Remove an item from the list.</dd> <dd>Remove an item from the list.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_set">set()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_set">set()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Set an item at the specified index.</dd> <dd>Set an item at the specified index.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-StrictStack.html#method_stack">stack()</a> <a class="" href="classes/OCC-Basics-DataStructures-StrictStack.html#method_stack">stack()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Add an item to the stack.</dd> <dd>Add an item to the stack.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_toArray">toArray()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_toArray">toArray()</a>
<span> <span>
&nbsp;: array&lt;int, <abbr title="\OCC\Basics\DataStructures\Traits\AllowedType">AllowedType</abbr>&gt; </span> &nbsp;: array&lt;int, <abbr title="\OCC\Basics\DataStructures\Traits\AllowedType">AllowedType</abbr>&gt; </span>
</dt> </dt>
<dd>Return array representation of list.</dd> <dd>Return array representation of list.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_toStrictCollection">toStrictCollection()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_toStrictCollection">toStrictCollection()</a>
<span> <span>
&nbsp;: <a href="classes/OCC-Basics-DataStructures-StrictCollection.html"><abbr title="\OCC\Basics\DataStructures\StrictCollection">StrictCollection</abbr></a>&lt;string|int, <abbr title="\OCC\Basics\DataStructures\Traits\AllowedType">AllowedType</abbr>&gt; </span> &nbsp;: <a href="classes/OCC-Basics-DataStructures-StrictCollection.html"><abbr title="\OCC\Basics\DataStructures\StrictCollection">StrictCollection</abbr></a>&lt;string|int, <abbr title="\OCC\Basics\DataStructures\Traits\AllowedType">AllowedType</abbr>&gt; </span>
</dt> </dt>
<dd>Turn list into a type-sensitive collection.</dd> <dd>Turn list into a type-sensitive collection.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_unshift">unshift()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_unshift">unshift()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Prepend the list with an item.</dd> <dd>Prepend the list with an item.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-StrictStack.html#method_unstack">unstack()</a> <a class="" href="classes/OCC-Basics-DataStructures-StrictStack.html#method_unstack">unstack()</a>
<span> <span>
&nbsp;: <abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr> </span> &nbsp;: <abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr> </span>
</dt> </dt>
@ -382,7 +385,6 @@ array of atomic types or fully qualified class names.</p>
@ -421,6 +423,7 @@ array of atomic types or fully qualified class names.</p>
<div class="phpdocumentor-label-line"> <div class="phpdocumentor-label-line">
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -471,6 +474,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -502,6 +507,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -554,6 +560,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -585,6 +593,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -618,6 +627,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -651,6 +662,9 @@ Possible values are:</p>
</article> </article>
@ -684,6 +698,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -716,6 +731,8 @@ Possible values are:</p>
</dd> </dd>
</dl> </dl>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><abbr title="\OCC\Basics\DataStructures\Traits\AllowedType">AllowedType</abbr></span> <span class="phpdocumentor-signature__response_type"><abbr title="\OCC\Basics\DataStructures\Traits\AllowedType">AllowedType</abbr></span>
@ -758,6 +775,9 @@ Possible values are:</p>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
@ -799,6 +819,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -851,6 +872,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -882,6 +905,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -915,6 +939,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -946,6 +972,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -979,6 +1006,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -1010,6 +1039,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -1043,6 +1073,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -1074,6 +1106,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -1116,6 +1149,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -1147,6 +1182,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -1180,6 +1216,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -1213,6 +1251,9 @@ Possible values are:</p>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
@ -1256,6 +1297,9 @@ Possible values are:</p>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
@ -1297,6 +1341,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -1330,6 +1375,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -1363,6 +1410,7 @@ Possible values are:</p>
<h5 class="phpdocumentor-tag-list__heading" id="tags"> <h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags Tags
<a href="classes/OCC-Basics-DataStructures-StrictStack.html#method_unstack#tags" class="headerlink"><i class="fas fa-link"></i></a> <a href="classes/OCC-Basics-DataStructures-StrictStack.html#method_unstack#tags" class="headerlink"><i class="fas fa-link"></i></a>
@ -1381,6 +1429,8 @@ Possible values are:</p>
</dd> </dd>
</dl> </dl>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr></span> <span class="phpdocumentor-signature__response_type"><abbr title="\OCC\Basics\DataStructures\AllowedType">AllowedType</abbr></span>
@ -1504,22 +1554,22 @@ Possible values are:</p>
<li class="phpdocumentor-on-this-page-section__title">Methods</li> <li class="phpdocumentor-on-this-page-section__title">Methods</li>
<li> <li>
<ul class="phpdocumentor-list -clean"> <ul class="phpdocumentor-list -clean">
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method___construct">__construct()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method___construct">__construct()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_add">add()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_add">add()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_append">append()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_append">append()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_clear">clear()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_clear">clear()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_get">get()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_get">get()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_isList">isList()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_isList">isList()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_offsetSet">offsetSet()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_offsetSet">offsetSet()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_prepend">prepend()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_prepend">prepend()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_push">push()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_push">push()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_remove">remove()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_remove">remove()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_set">set()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_set">set()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-StrictStack.html#method_stack">stack()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-StrictStack.html#method_stack">stack()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_toArray">toArray()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_toArray">toArray()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_toStrictCollection">toStrictCollection()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_toStrictCollection">toStrictCollection()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_unshift">unshift()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_unshift">unshift()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-StrictStack.html#method_unstack">unstack()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-StrictStack.html#method_unstack">unstack()</a></li>
</ul> </ul>
</li> </li>
</ul> </ul>

View File

@ -190,6 +190,7 @@
<p class="phpdocumentor-summary">The common interface of all type-sensitive, SPL-based datastructures.</p> <p class="phpdocumentor-summary">The common interface of all type-sensitive, SPL-based datastructures.</p>
<section class="phpdocumentor-description"><p>This extends all methods of the common interface of the Standard PHP Library <section class="phpdocumentor-description"><p>This extends all methods of the common interface of the Standard PHP Library
<a href="https://www.php.net/spl.datastructures">Doubly Linked List Datastructures</a> <a href="https://www.php.net/spl.datastructures">Doubly Linked List Datastructures</a>
by type-checking to only allow specified data types on the list.</p> by type-checking to only allow specified data types on the list.</p>
@ -229,7 +230,9 @@ by type-checking to only allow specified data types on the list.</p>
</section> </section>
</dd> </dd>
</dl> </dl>
@ -255,98 +258,98 @@ by type-checking to only allow specified data types on the list.</p>
</h4> </h4>
<dl class="phpdocumentor-table-of-contents"> <dl class="phpdocumentor-table-of-contents">
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method___construct">__construct()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method___construct">__construct()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Create a type-sensitive, traversable list of items.</dd> <dd>Create a type-sensitive, traversable list of items.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_add">add()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_add">add()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Add/insert a new item at the specified offset.</dd> <dd>Add/insert a new item at the specified offset.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_append">append()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_append">append()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Append items at the end of the list.</dd> <dd>Append items at the end of the list.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_clear">clear()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_clear">clear()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Clear the list of any items.</dd> <dd>Clear the list of any items.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_get">get()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_get">get()</a>
<span> <span>
&nbsp;: <abbr title="\OCC\Basics\DataStructures\Traits\AllowedType">AllowedType</abbr> </span> &nbsp;: <abbr title="\OCC\Basics\DataStructures\Traits\AllowedType">AllowedType</abbr> </span>
</dt> </dt>
<dd>Get the item at the specified index.</dd> <dd>Get the item at the specified index.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_isList">isList()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_isList">isList()</a>
<span> <span>
&nbsp;: true </span> &nbsp;: true </span>
</dt> </dt>
<dd>Check if this can be considered a list.</dd> <dd>Check if this can be considered a list.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_offsetSet">offsetSet()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_offsetSet">offsetSet()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Set the item at the specified offset.</dd> <dd>Set the item at the specified offset.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_prepend">prepend()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_prepend">prepend()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Prepend items at the start of the list.</dd> <dd>Prepend items at the start of the list.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_push">push()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_push">push()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Push an item at the end of the list.</dd> <dd>Push an item at the end of the list.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_remove">remove()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_remove">remove()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Remove an item from the list.</dd> <dd>Remove an item from the list.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_set">set()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_set">set()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Set an item at the specified index.</dd> <dd>Set an item at the specified index.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_toArray">toArray()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_toArray">toArray()</a>
<span> <span>
&nbsp;: array&lt;int, <abbr title="\OCC\Basics\DataStructures\Traits\AllowedType">AllowedType</abbr>&gt; </span> &nbsp;: array&lt;int, <abbr title="\OCC\Basics\DataStructures\Traits\AllowedType">AllowedType</abbr>&gt; </span>
</dt> </dt>
<dd>Return array representation of list.</dd> <dd>Return array representation of list.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_toStrictCollection">toStrictCollection()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_toStrictCollection">toStrictCollection()</a>
<span> <span>
&nbsp;: <a href="classes/OCC-Basics-DataStructures-StrictCollection.html"><abbr title="\OCC\Basics\DataStructures\StrictCollection">StrictCollection</abbr></a>&lt;string|int, <abbr title="\OCC\Basics\DataStructures\Traits\AllowedType">AllowedType</abbr>&gt; </span> &nbsp;: <a href="classes/OCC-Basics-DataStructures-StrictCollection.html"><abbr title="\OCC\Basics\DataStructures\StrictCollection">StrictCollection</abbr></a>&lt;string|int, <abbr title="\OCC\Basics\DataStructures\Traits\AllowedType">AllowedType</abbr>&gt; </span>
</dt> </dt>
<dd>Turn list into a type-sensitive collection.</dd> <dd>Turn list into a type-sensitive collection.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_unshift">unshift()</a> <a class="" href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_unshift">unshift()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
@ -395,6 +398,7 @@ by type-checking to only allow specified data types on the list.</p>
<div class="phpdocumentor-label-line"> <div class="phpdocumentor-label-line">
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -445,6 +449,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -476,6 +482,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -528,6 +535,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -559,6 +568,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -592,6 +602,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -625,6 +637,9 @@ Possible values are:</p>
</article> </article>
@ -658,6 +673,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -690,6 +706,8 @@ Possible values are:</p>
</dd> </dd>
</dl> </dl>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><abbr title="\OCC\Basics\DataStructures\Traits\AllowedType">AllowedType</abbr></span> <span class="phpdocumentor-signature__response_type"><abbr title="\OCC\Basics\DataStructures\Traits\AllowedType">AllowedType</abbr></span>
@ -732,6 +750,9 @@ Possible values are:</p>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
@ -773,6 +794,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -825,6 +847,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -856,6 +880,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -889,6 +914,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -920,6 +947,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -953,6 +981,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -984,6 +1014,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -1017,6 +1048,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -1048,6 +1081,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -1090,6 +1124,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -1123,6 +1159,9 @@ Possible values are:</p>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
@ -1166,6 +1205,9 @@ Possible values are:</p>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
@ -1207,6 +1249,7 @@ Possible values are:</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -1240,6 +1283,8 @@ Possible values are:</p>
</dl> </dl>
</article> </article>
</section> </section>
@ -1352,20 +1397,20 @@ Possible values are:</p>
<li class="phpdocumentor-on-this-page-section__title">Methods</li> <li class="phpdocumentor-on-this-page-section__title">Methods</li>
<li> <li>
<ul class="phpdocumentor-list -clean"> <ul class="phpdocumentor-list -clean">
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method___construct">__construct()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method___construct">__construct()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_add">add()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_add">add()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_append">append()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_append">append()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_clear">clear()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_clear">clear()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_get">get()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_get">get()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_isList">isList()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_isList">isList()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_offsetSet">offsetSet()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_offsetSet">offsetSet()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_prepend">prepend()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_prepend">prepend()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_push">push()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_push">push()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_remove">remove()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_remove">remove()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_set">set()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_set">set()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_toArray">toArray()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_toArray">toArray()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_toStrictCollection">toStrictCollection()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_toStrictCollection">toStrictCollection()</a></li>
<li><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_unshift">unshift()</a></li> <li class=""><a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html#method_unshift">unshift()</a></li>
</ul> </ul>
</li> </li>
</ul> </ul>

View File

@ -198,13 +198,14 @@
<aside class="phpdocumentor-element-found-in"> <aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/ErrorHandlers/ThrowErrorException.php"><a href="files/src-errorhandlers-throwerrorexception.html"><abbr title="src/ErrorHandlers/ThrowErrorException.php">ThrowErrorException.php</abbr></a></abbr> <abbr class="phpdocumentor-element-found-in__file" title="src/ErrorHandlers/ThrowErrorException.php"><a href="files/src-errorhandlers-throwerrorexception.html"><abbr title="src/ErrorHandlers/ThrowErrorException.php">ThrowErrorException.php</abbr></a></abbr>
: :
<span class="phpdocumentor-element-found-in__line">41</span> <span class="phpdocumentor-element-found-in__line">43</span>
<a href="classes/OCC-Basics-ErrorHandlers-ThrowErrorException.html#source-view.41" class="phpdocumentor-element-found-in__source" data-line="41" data-modal="source-view" data-src="files/src/ErrorHandlers/ThrowErrorException.php.txt"></a> <a href="classes/OCC-Basics-ErrorHandlers-ThrowErrorException.html#source-view.43" class="phpdocumentor-element-found-in__source" data-line="43" data-modal="source-view" data-src="files/src/ErrorHandlers/ThrowErrorException.php.txt"></a>
</aside> </aside>
<p class="phpdocumentor-summary">Throws internal errors as exceptions.</p> <p class="phpdocumentor-summary">Throws internal errors as exceptions.</p>
<section class="phpdocumentor-description"><p>If registered as error handler, this converts an internal PHP error into an <section class="phpdocumentor-description"><p>If registered as error handler, this converts an internal PHP error into an
<code class="prettyprint">ErrorException</code>. It respects the <code class="prettyprint">error_reporting</code> directive.</p> <code class="prettyprint">ErrorException</code>. It respects the <code class="prettyprint">error_reporting</code> directive.</p>
<blockquote> <blockquote>
@ -232,6 +233,8 @@
<h3 id="toc"> <h3 id="toc">
Table of Contents Table of Contents
<a href="classes/OCC-Basics-ErrorHandlers-ThrowErrorException.html#toc" class="headerlink"><i class="fas fa-link"></i></a> <a href="classes/OCC-Basics-ErrorHandlers-ThrowErrorException.html#toc" class="headerlink"><i class="fas fa-link"></i></a>
@ -254,7 +257,7 @@
</h4> </h4>
<dl class="phpdocumentor-table-of-contents"> <dl class="phpdocumentor-table-of-contents">
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-ErrorHandlers-ThrowErrorException.html#method___invoke">__invoke()</a> <a class="" href="classes/OCC-Basics-ErrorHandlers-ThrowErrorException.html#method___invoke">__invoke()</a>
<span> <span>
&nbsp;: bool </span> &nbsp;: bool </span>
</dt> </dt>
@ -264,7 +267,6 @@
@ -289,9 +291,9 @@
<aside class="phpdocumentor-element-found-in"> <aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/ErrorHandlers/ThrowErrorException.php"><a href="files/src-errorhandlers-throwerrorexception.html"><abbr title="src/ErrorHandlers/ThrowErrorException.php">ThrowErrorException.php</abbr></a></abbr> <abbr class="phpdocumentor-element-found-in__file" title="src/ErrorHandlers/ThrowErrorException.php"><a href="files/src-errorhandlers-throwerrorexception.html"><abbr title="src/ErrorHandlers/ThrowErrorException.php">ThrowErrorException.php</abbr></a></abbr>
: :
<span class="phpdocumentor-element-found-in__line">55</span> <span class="phpdocumentor-element-found-in__line">57</span>
<a href="classes/OCC-Basics-ErrorHandlers-ThrowErrorException.html#source-view.55" class="phpdocumentor-element-found-in__source" data-line="55" data-modal="source-view" data-src="files/src/ErrorHandlers/ThrowErrorException.php.txt"></a> <a href="classes/OCC-Basics-ErrorHandlers-ThrowErrorException.html#source-view.57" class="phpdocumentor-element-found-in__source" data-line="57" data-modal="source-view" data-src="files/src/ErrorHandlers/ThrowErrorException.php.txt"></a>
</aside> </aside>
<p class="phpdocumentor-summary">Convert an internal PHP error into an ErrorException.</p> <p class="phpdocumentor-summary">Convert an internal PHP error into an ErrorException.</p>
@ -303,6 +305,7 @@
<div class="phpdocumentor-label-line"> <div class="phpdocumentor-label-line">
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -362,6 +365,8 @@
</dd> </dd>
</dl> </dl>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">bool</span> <span class="phpdocumentor-signature__response_type">bool</span>
@ -485,7 +490,7 @@
<li class="phpdocumentor-on-this-page-section__title">Methods</li> <li class="phpdocumentor-on-this-page-section__title">Methods</li>
<li> <li>
<ul class="phpdocumentor-list -clean"> <ul class="phpdocumentor-list -clean">
<li><a href="classes/OCC-Basics-ErrorHandlers-ThrowErrorException.html#method___invoke">__invoke()</a></li> <li class=""><a href="classes/OCC-Basics-ErrorHandlers-ThrowErrorException.html#method___invoke">__invoke()</a></li>
</ul> </ul>
</li> </li>
</ul> </ul>

View File

@ -198,13 +198,14 @@
<aside class="phpdocumentor-element-found-in"> <aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/ErrorHandlers/TriggerExceptionError.php"><a href="files/src-errorhandlers-triggerexceptionerror.html"><abbr title="src/ErrorHandlers/TriggerExceptionError.php">TriggerExceptionError.php</abbr></a></abbr> <abbr class="phpdocumentor-element-found-in__file" title="src/ErrorHandlers/TriggerExceptionError.php"><a href="files/src-errorhandlers-triggerexceptionerror.html"><abbr title="src/ErrorHandlers/TriggerExceptionError.php">TriggerExceptionError.php</abbr></a></abbr>
: :
<span class="phpdocumentor-element-found-in__line">42</span> <span class="phpdocumentor-element-found-in__line">44</span>
<a href="classes/OCC-Basics-ErrorHandlers-TriggerExceptionError.html#source-view.42" class="phpdocumentor-element-found-in__source" data-line="42" data-modal="source-view" data-src="files/src/ErrorHandlers/TriggerExceptionError.php.txt"></a> <a href="classes/OCC-Basics-ErrorHandlers-TriggerExceptionError.html#source-view.44" class="phpdocumentor-element-found-in__source" data-line="44" data-modal="source-view" data-src="files/src/ErrorHandlers/TriggerExceptionError.php.txt"></a>
</aside> </aside>
<p class="phpdocumentor-summary">Triggers errors for uncaught exceptions.</p> <p class="phpdocumentor-summary">Triggers errors for uncaught exceptions.</p>
<section class="phpdocumentor-description"><p>If registered as exception handler, this catches an uncaught exception and <section class="phpdocumentor-description"><p>If registered as exception handler, this catches an uncaught exception and
converts it into an internal PHP error of severity <code class="prettyprint">E_USER_ERROR</code>.</p> converts it into an internal PHP error of severity <code class="prettyprint">E_USER_ERROR</code>.</p>
<blockquote> <blockquote>
@ -232,6 +233,8 @@ converts it into an internal PHP error of severity <code class="prettyprint">E_U
<h3 id="toc"> <h3 id="toc">
Table of Contents Table of Contents
<a href="classes/OCC-Basics-ErrorHandlers-TriggerExceptionError.html#toc" class="headerlink"><i class="fas fa-link"></i></a> <a href="classes/OCC-Basics-ErrorHandlers-TriggerExceptionError.html#toc" class="headerlink"><i class="fas fa-link"></i></a>
@ -254,7 +257,7 @@ converts it into an internal PHP error of severity <code class="prettyprint">E_U
</h4> </h4>
<dl class="phpdocumentor-table-of-contents"> <dl class="phpdocumentor-table-of-contents">
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-ErrorHandlers-TriggerExceptionError.html#method___invoke">__invoke()</a> <a class="" href="classes/OCC-Basics-ErrorHandlers-TriggerExceptionError.html#method___invoke">__invoke()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
@ -264,7 +267,6 @@ converts it into an internal PHP error of severity <code class="prettyprint">E_U
@ -289,9 +291,9 @@ converts it into an internal PHP error of severity <code class="prettyprint">E_U
<aside class="phpdocumentor-element-found-in"> <aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/ErrorHandlers/TriggerExceptionError.php"><a href="files/src-errorhandlers-triggerexceptionerror.html"><abbr title="src/ErrorHandlers/TriggerExceptionError.php">TriggerExceptionError.php</abbr></a></abbr> <abbr class="phpdocumentor-element-found-in__file" title="src/ErrorHandlers/TriggerExceptionError.php"><a href="files/src-errorhandlers-triggerexceptionerror.html"><abbr title="src/ErrorHandlers/TriggerExceptionError.php">TriggerExceptionError.php</abbr></a></abbr>
: :
<span class="phpdocumentor-element-found-in__line">51</span> <span class="phpdocumentor-element-found-in__line">53</span>
<a href="classes/OCC-Basics-ErrorHandlers-TriggerExceptionError.html#source-view.51" class="phpdocumentor-element-found-in__source" data-line="51" data-modal="source-view" data-src="files/src/ErrorHandlers/TriggerExceptionError.php.txt"></a> <a href="classes/OCC-Basics-ErrorHandlers-TriggerExceptionError.html#source-view.53" class="phpdocumentor-element-found-in__source" data-line="53" data-modal="source-view" data-src="files/src/ErrorHandlers/TriggerExceptionError.php.txt"></a>
</aside> </aside>
<p class="phpdocumentor-summary">Convert an uncaught exception into an PHP error.</p> <p class="phpdocumentor-summary">Convert an uncaught exception into an PHP error.</p>
@ -303,6 +305,7 @@ converts it into an internal PHP error of severity <code class="prettyprint">E_U
<div class="phpdocumentor-label-line"> <div class="phpdocumentor-label-line">
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -319,6 +322,8 @@ converts it into an internal PHP error of severity <code class="prettyprint">E_U
</article> </article>
</section> </section>
@ -433,7 +438,7 @@ converts it into an internal PHP error of severity <code class="prettyprint">E_U
<li class="phpdocumentor-on-this-page-section__title">Methods</li> <li class="phpdocumentor-on-this-page-section__title">Methods</li>
<li> <li>
<ul class="phpdocumentor-list -clean"> <ul class="phpdocumentor-list -clean">
<li><a href="classes/OCC-Basics-ErrorHandlers-TriggerExceptionError.html#method___invoke">__invoke()</a></li> <li class=""><a href="classes/OCC-Basics-ErrorHandlers-TriggerExceptionError.html#method___invoke">__invoke()</a></li>
</ul> </ul>
</li> </li>
</ul> </ul>

View File

@ -189,6 +189,7 @@
<p class="phpdocumentor-summary">A generic implementation of the ArrayAccess interface.</p> <p class="phpdocumentor-summary">A generic implementation of the ArrayAccess interface.</p>
<section class="phpdocumentor-description"><p>Internally it accesses the protected <code class="prettyprint">$_data</code> array.</p> <section class="phpdocumentor-description"><p>Internally it accesses the protected <code class="prettyprint">$_data</code> array.</p>
</section> </section>
@ -217,7 +218,9 @@
</section> </section>
</dd> </dd>
</dl> </dl>
@ -243,28 +246,28 @@
</h4> </h4>
<dl class="phpdocumentor-table-of-contents"> <dl class="phpdocumentor-table-of-contents">
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetExists">offsetExists()</a> <a class="" href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetExists">offsetExists()</a>
<span> <span>
&nbsp;: bool </span> &nbsp;: bool </span>
</dt> </dt>
<dd>Check if the specified offset exists.</dd> <dd>Check if the specified offset exists.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetGet">offsetGet()</a> <a class="" href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetGet">offsetGet()</a>
<span> <span>
&nbsp;: <abbr title="\OCC\Basics\Interfaces\TValue">TValue</abbr>|null </span> &nbsp;: <abbr title="\OCC\Basics\Interfaces\TValue">TValue</abbr>|null </span>
</dt> </dt>
<dd>Retrieve data at the specified offset.</dd> <dd>Retrieve data at the specified offset.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetSet">offsetSet()</a> <a class="" href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetSet">offsetSet()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Assign a value to the specified offset.</dd> <dd>Assign a value to the specified offset.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetUnset">offsetUnset()</a> <a class="" href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetUnset">offsetUnset()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
@ -315,6 +318,7 @@
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -330,6 +334,8 @@
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">bool</span> <span class="phpdocumentor-signature__response_type">bool</span>
@ -370,6 +376,7 @@
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -385,6 +392,8 @@
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><abbr title="\OCC\Basics\Interfaces\TValue">TValue</abbr>|null</span> <span class="phpdocumentor-signature__response_type"><abbr title="\OCC\Basics\Interfaces\TValue">TValue</abbr>|null</span>
@ -425,6 +434,7 @@
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -450,6 +460,8 @@
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -481,6 +493,7 @@
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -497,6 +510,8 @@
</article> </article>
</section> </section>
@ -609,10 +624,10 @@
<li class="phpdocumentor-on-this-page-section__title">Methods</li> <li class="phpdocumentor-on-this-page-section__title">Methods</li>
<li> <li>
<ul class="phpdocumentor-list -clean"> <ul class="phpdocumentor-list -clean">
<li><a href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetExists">offsetExists()</a></li> <li class=""><a href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetExists">offsetExists()</a></li>
<li><a href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetGet">offsetGet()</a></li> <li class=""><a href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetGet">offsetGet()</a></li>
<li><a href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetSet">offsetSet()</a></li> <li class=""><a href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetSet">offsetSet()</a></li>
<li><a href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetUnset">offsetUnset()</a></li> <li class=""><a href="classes/OCC-Basics-Interfaces-ArrayAccessTrait.html#method_offsetUnset">offsetUnset()</a></li>
</ul> </ul>
</li> </li>
</ul> </ul>

View File

@ -189,6 +189,7 @@
<p class="phpdocumentor-summary">A generic implementation of the Countable interface.</p> <p class="phpdocumentor-summary">A generic implementation of the Countable interface.</p>
<section class="phpdocumentor-description"><p>Internally it counts the values of the protected <code class="prettyprint">$_data</code> array.</p> <section class="phpdocumentor-description"><p>Internally it counts the values of the protected <code class="prettyprint">$_data</code> array.</p>
</section> </section>
@ -217,7 +218,9 @@
</section> </section>
</dd> </dd>
</dl> </dl>
@ -243,7 +246,7 @@
</h4> </h4>
<dl class="phpdocumentor-table-of-contents"> <dl class="phpdocumentor-table-of-contents">
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Interfaces-CountableTrait.html#method_count">count()</a> <a class="" href="classes/OCC-Basics-Interfaces-CountableTrait.html#method_count">count()</a>
<span> <span>
&nbsp;: int<0, max> </span> &nbsp;: int<0, max> </span>
</dt> </dt>
@ -296,6 +299,9 @@
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
@ -418,7 +424,7 @@
<li class="phpdocumentor-on-this-page-section__title">Methods</li> <li class="phpdocumentor-on-this-page-section__title">Methods</li>
<li> <li>
<ul class="phpdocumentor-list -clean"> <ul class="phpdocumentor-list -clean">
<li><a href="classes/OCC-Basics-Interfaces-CountableTrait.html#method_count">count()</a></li> <li class=""><a href="classes/OCC-Basics-Interfaces-CountableTrait.html#method_count">count()</a></li>
</ul> </ul>
</li> </li>
</ul> </ul>

View File

@ -189,6 +189,7 @@
<p class="phpdocumentor-summary">A generic implementation of the IteratorAggregate interface.</p> <p class="phpdocumentor-summary">A generic implementation of the IteratorAggregate interface.</p>
<section class="phpdocumentor-description"><p>Internally it iterates over the protected <code class="prettyprint">$_data</code> array.</p> <section class="phpdocumentor-description"><p>Internally it iterates over the protected <code class="prettyprint">$_data</code> array.</p>
</section> </section>
@ -217,7 +218,9 @@
</section> </section>
</dd> </dd>
</dl> </dl>
@ -243,7 +246,7 @@
</h4> </h4>
<dl class="phpdocumentor-table-of-contents"> <dl class="phpdocumentor-table-of-contents">
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Interfaces-IteratorAggregateTrait.html#method_getIterator">getIterator()</a> <a class="" href="classes/OCC-Basics-Interfaces-IteratorAggregateTrait.html#method_getIterator">getIterator()</a>
<span> <span>
&nbsp;: <abbr title="\ArrayIterator">ArrayIterator</abbr>&lt;string|int, <abbr title="\OCC\Basics\Interfaces\TValue">TValue</abbr>&gt; </span> &nbsp;: <abbr title="\ArrayIterator">ArrayIterator</abbr>&lt;string|int, <abbr title="\OCC\Basics\Interfaces\TValue">TValue</abbr>&gt; </span>
</dt> </dt>
@ -296,6 +299,9 @@
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
@ -418,7 +424,7 @@
<li class="phpdocumentor-on-this-page-section__title">Methods</li> <li class="phpdocumentor-on-this-page-section__title">Methods</li>
<li> <li>
<ul class="phpdocumentor-list -clean"> <ul class="phpdocumentor-list -clean">
<li><a href="classes/OCC-Basics-Interfaces-IteratorAggregateTrait.html#method_getIterator">getIterator()</a></li> <li class=""><a href="classes/OCC-Basics-Interfaces-IteratorAggregateTrait.html#method_getIterator">getIterator()</a></li>
</ul> </ul>
</li> </li>
</ul> </ul>

View File

@ -189,6 +189,7 @@
<p class="phpdocumentor-summary">A generic implementation of the Iterator interface.</p> <p class="phpdocumentor-summary">A generic implementation of the Iterator interface.</p>
<section class="phpdocumentor-description"><p>Internally it iterates over the protected <code class="prettyprint">$_data</code> array.</p> <section class="phpdocumentor-description"><p>Internally it iterates over the protected <code class="prettyprint">$_data</code> array.</p>
</section> </section>
@ -217,7 +218,9 @@
</section> </section>
</dd> </dd>
</dl> </dl>
@ -243,42 +246,42 @@
</h4> </h4>
<dl class="phpdocumentor-table-of-contents"> <dl class="phpdocumentor-table-of-contents">
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_current">current()</a> <a class="" href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_current">current()</a>
<span> <span>
&nbsp;: <abbr title="\OCC\Basics\Interfaces\TValue">TValue</abbr>|null </span> &nbsp;: <abbr title="\OCC\Basics\Interfaces\TValue">TValue</abbr>|null </span>
</dt> </dt>
<dd>Return the current item.</dd> <dd>Return the current item.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_key">key()</a> <a class="" href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_key">key()</a>
<span> <span>
&nbsp;: string|int|null </span> &nbsp;: string|int|null </span>
</dt> </dt>
<dd>Return the current key.</dd> <dd>Return the current key.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_next">next()</a> <a class="" href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_next">next()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Move forward to next item.</dd> <dd>Move forward to next item.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_prev">prev()</a> <a class="" href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_prev">prev()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Move back to previous item.</dd> <dd>Move back to previous item.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_rewind">rewind()</a> <a class="" href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_rewind">rewind()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Rewind the iterator to the first item.</dd> <dd>Rewind the iterator to the first item.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_valid">valid()</a> <a class="" href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_valid">valid()</a>
<span> <span>
&nbsp;: bool </span> &nbsp;: bool </span>
</dt> </dt>
@ -331,6 +334,9 @@
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
@ -374,6 +380,9 @@
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
@ -417,6 +426,9 @@
</article> </article>
@ -452,6 +464,9 @@
</article> </article>
@ -487,6 +502,9 @@
</article> </article>
@ -522,6 +540,9 @@
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
@ -644,12 +665,12 @@
<li class="phpdocumentor-on-this-page-section__title">Methods</li> <li class="phpdocumentor-on-this-page-section__title">Methods</li>
<li> <li>
<ul class="phpdocumentor-list -clean"> <ul class="phpdocumentor-list -clean">
<li><a href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_current">current()</a></li> <li class=""><a href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_current">current()</a></li>
<li><a href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_key">key()</a></li> <li class=""><a href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_key">key()</a></li>
<li><a href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_next">next()</a></li> <li class=""><a href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_next">next()</a></li>
<li><a href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_prev">prev()</a></li> <li class=""><a href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_prev">prev()</a></li>
<li><a href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_rewind">rewind()</a></li> <li class=""><a href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_rewind">rewind()</a></li>
<li><a href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_valid">valid()</a></li> <li class=""><a href="classes/OCC-Basics-Interfaces-IteratorTrait.html#method_valid">valid()</a></li>
</ul> </ul>
</li> </li>
</ul> </ul>

View File

@ -189,6 +189,7 @@
<p class="phpdocumentor-summary">Reads data from inaccessible properties by using magic methods.</p> <p class="phpdocumentor-summary">Reads data from inaccessible properties by using magic methods.</p>
<section class="phpdocumentor-description"><p>To make a <code class="prettyprint">protected</code> or <code class="prettyprint">private</code> property readable, provide a method named <section class="phpdocumentor-description"><p>To make a <code class="prettyprint">protected</code> or <code class="prettyprint">private</code> property readable, provide a method named
<code class="prettyprint">_magicGet{Property}()</code> which handles the reading. Replace <code class="prettyprint">{Property}</code> in <code class="prettyprint">_magicGet{Property}()</code> which handles the reading. Replace <code class="prettyprint">{Property}</code> in
the method's name with the name of the actual property (with an uppercase the method's name with the name of the actual property (with an uppercase
@ -216,7 +217,9 @@ a context where it normally would not be accessible.</p>
</section> </section>
</dd> </dd>
</dl> </dl>
@ -242,14 +245,14 @@ a context where it normally would not be accessible.</p>
</h4> </h4>
<dl class="phpdocumentor-table-of-contents"> <dl class="phpdocumentor-table-of-contents">
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Traits-Getter.html#method___get">__get()</a> <a class="" href="classes/OCC-Basics-Traits-Getter.html#method___get">__get()</a>
<span> <span>
&nbsp;: mixed </span> &nbsp;: mixed </span>
</dt> </dt>
<dd>Read data from an inaccessible property.</dd> <dd>Read data from an inaccessible property.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Traits-Getter.html#method___isset">__isset()</a> <a class="" href="classes/OCC-Basics-Traits-Getter.html#method___isset">__isset()</a>
<span> <span>
&nbsp;: bool </span> &nbsp;: bool </span>
</dt> </dt>
@ -298,6 +301,7 @@ a context where it normally would not be accessible.</p>
<div class="phpdocumentor-label-line"> <div class="phpdocumentor-label-line">
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -330,6 +334,8 @@ a context where it normally would not be accessible.</p>
</dd> </dd>
</dl> </dl>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">mixed</span> <span class="phpdocumentor-signature__response_type">mixed</span>
@ -368,6 +374,7 @@ a context where it normally would not be accessible.</p>
<div class="phpdocumentor-label-line"> <div class="phpdocumentor-label-line">
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -383,6 +390,8 @@ a context where it normally would not be accessible.</p>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">bool</span> <span class="phpdocumentor-signature__response_type">bool</span>
@ -504,8 +513,8 @@ a context where it normally would not be accessible.</p>
<li class="phpdocumentor-on-this-page-section__title">Methods</li> <li class="phpdocumentor-on-this-page-section__title">Methods</li>
<li> <li>
<ul class="phpdocumentor-list -clean"> <ul class="phpdocumentor-list -clean">
<li><a href="classes/OCC-Basics-Traits-Getter.html#method___get">__get()</a></li> <li class=""><a href="classes/OCC-Basics-Traits-Getter.html#method___get">__get()</a></li>
<li><a href="classes/OCC-Basics-Traits-Getter.html#method___isset">__isset()</a></li> <li class=""><a href="classes/OCC-Basics-Traits-Getter.html#method___isset">__isset()</a></li>
</ul> </ul>
</li> </li>
</ul> </ul>

View File

@ -189,6 +189,7 @@
<p class="phpdocumentor-summary">Overloads a class with readable magic properties.</p> <p class="phpdocumentor-summary">Overloads a class with readable magic properties.</p>
<section class="phpdocumentor-description"><p>Internally it reads the protected <code class="prettyprint">$_data</code> array whose keys are interpreted <section class="phpdocumentor-description"><p>Internally it reads the protected <code class="prettyprint">$_data</code> array whose keys are interpreted
as property names.</p> as property names.</p>
<blockquote> <blockquote>
@ -212,7 +213,9 @@ as property names.</p>
</section> </section>
</dd> </dd>
</dl> </dl>
@ -238,14 +241,14 @@ as property names.</p>
</h4> </h4>
<dl class="phpdocumentor-table-of-contents"> <dl class="phpdocumentor-table-of-contents">
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Traits-OverloadingGetter.html#method___get">__get()</a> <a class="" href="classes/OCC-Basics-Traits-OverloadingGetter.html#method___get">__get()</a>
<span> <span>
&nbsp;: mixed </span> &nbsp;: mixed </span>
</dt> </dt>
<dd>Read data from an overloaded property.</dd> <dd>Read data from an overloaded property.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Traits-OverloadingGetter.html#method___isset">__isset()</a> <a class="" href="classes/OCC-Basics-Traits-OverloadingGetter.html#method___isset">__isset()</a>
<span> <span>
&nbsp;: bool </span> &nbsp;: bool </span>
</dt> </dt>
@ -294,6 +297,7 @@ as property names.</p>
<div class="phpdocumentor-label-line"> <div class="phpdocumentor-label-line">
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -309,6 +313,8 @@ as property names.</p>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">mixed</span> <span class="phpdocumentor-signature__response_type">mixed</span>
@ -347,6 +353,7 @@ as property names.</p>
<div class="phpdocumentor-label-line"> <div class="phpdocumentor-label-line">
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -362,6 +369,8 @@ as property names.</p>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">bool</span> <span class="phpdocumentor-signature__response_type">bool</span>
@ -483,8 +492,8 @@ as property names.</p>
<li class="phpdocumentor-on-this-page-section__title">Methods</li> <li class="phpdocumentor-on-this-page-section__title">Methods</li>
<li> <li>
<ul class="phpdocumentor-list -clean"> <ul class="phpdocumentor-list -clean">
<li><a href="classes/OCC-Basics-Traits-OverloadingGetter.html#method___get">__get()</a></li> <li class=""><a href="classes/OCC-Basics-Traits-OverloadingGetter.html#method___get">__get()</a></li>
<li><a href="classes/OCC-Basics-Traits-OverloadingGetter.html#method___isset">__isset()</a></li> <li class=""><a href="classes/OCC-Basics-Traits-OverloadingGetter.html#method___isset">__isset()</a></li>
</ul> </ul>
</li> </li>
</ul> </ul>

View File

@ -189,6 +189,7 @@
<p class="phpdocumentor-summary">Overloads a class with writable magic properties.</p> <p class="phpdocumentor-summary">Overloads a class with writable magic properties.</p>
<section class="phpdocumentor-description"><p>Internally it writes the protected <code class="prettyprint">$_data</code> array whose keys are interpreted <section class="phpdocumentor-description"><p>Internally it writes the protected <code class="prettyprint">$_data</code> array whose keys are interpreted
as property names.</p> as property names.</p>
<blockquote> <blockquote>
@ -212,7 +213,9 @@ as property names.</p>
</section> </section>
</dd> </dd>
</dl> </dl>
@ -238,14 +241,14 @@ as property names.</p>
</h4> </h4>
<dl class="phpdocumentor-table-of-contents"> <dl class="phpdocumentor-table-of-contents">
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Traits-OverloadingSetter.html#method___set">__set()</a> <a class="" href="classes/OCC-Basics-Traits-OverloadingSetter.html#method___set">__set()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Write data to an overloaded property.</dd> <dd>Write data to an overloaded property.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Traits-OverloadingSetter.html#method___unset">__unset()</a> <a class="" href="classes/OCC-Basics-Traits-OverloadingSetter.html#method___unset">__unset()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
@ -294,6 +297,7 @@ as property names.</p>
<div class="phpdocumentor-label-line"> <div class="phpdocumentor-label-line">
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -319,6 +323,8 @@ as property names.</p>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -348,6 +354,7 @@ as property names.</p>
<div class="phpdocumentor-label-line"> <div class="phpdocumentor-label-line">
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -364,6 +371,8 @@ as property names.</p>
</article> </article>
</section> </section>
@ -476,8 +485,8 @@ as property names.</p>
<li class="phpdocumentor-on-this-page-section__title">Methods</li> <li class="phpdocumentor-on-this-page-section__title">Methods</li>
<li> <li>
<ul class="phpdocumentor-list -clean"> <ul class="phpdocumentor-list -clean">
<li><a href="classes/OCC-Basics-Traits-OverloadingSetter.html#method___set">__set()</a></li> <li class=""><a href="classes/OCC-Basics-Traits-OverloadingSetter.html#method___set">__set()</a></li>
<li><a href="classes/OCC-Basics-Traits-OverloadingSetter.html#method___unset">__unset()</a></li> <li class=""><a href="classes/OCC-Basics-Traits-OverloadingSetter.html#method___unset">__unset()</a></li>
</ul> </ul>
</li> </li>
</ul> </ul>

View File

@ -189,6 +189,7 @@
<p class="phpdocumentor-summary">Writes data to inaccessible properties by using magic methods.</p> <p class="phpdocumentor-summary">Writes data to inaccessible properties by using magic methods.</p>
<section class="phpdocumentor-description"><p>To make a <code class="prettyprint">protected</code> or <code class="prettyprint">private</code> property writable, provide a method named <section class="phpdocumentor-description"><p>To make a <code class="prettyprint">protected</code> or <code class="prettyprint">private</code> property writable, provide a method named
<code class="prettyprint">_magicSet{Property}()</code> which handles the writing. Replace <code class="prettyprint">{Property}</code> in <code class="prettyprint">_magicSet{Property}()</code> which handles the writing. Replace <code class="prettyprint">{Property}</code> in
the method's name with the name of the actual property (with an uppercase the method's name with the name of the actual property (with an uppercase
@ -216,7 +217,9 @@ to in a context where it normally would not be accessible.</p>
</section> </section>
</dd> </dd>
</dl> </dl>
@ -242,14 +245,14 @@ to in a context where it normally would not be accessible.</p>
</h4> </h4>
<dl class="phpdocumentor-table-of-contents"> <dl class="phpdocumentor-table-of-contents">
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Traits-Setter.html#method___set">__set()</a> <a class="" href="classes/OCC-Basics-Traits-Setter.html#method___set">__set()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>Write data to an inaccessible property.</dd> <dd>Write data to an inaccessible property.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Traits-Setter.html#method___unset">__unset()</a> <a class="" href="classes/OCC-Basics-Traits-Setter.html#method___unset">__unset()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
@ -298,6 +301,7 @@ to in a context where it normally would not be accessible.</p>
<div class="phpdocumentor-label-line"> <div class="phpdocumentor-label-line">
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -340,6 +344,8 @@ to in a context where it normally would not be accessible.</p>
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -369,6 +375,7 @@ to in a context where it normally would not be accessible.</p>
<div class="phpdocumentor-label-line"> <div class="phpdocumentor-label-line">
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -385,6 +392,8 @@ to in a context where it normally would not be accessible.</p>
</article> </article>
</section> </section>
@ -497,8 +506,8 @@ to in a context where it normally would not be accessible.</p>
<li class="phpdocumentor-on-this-page-section__title">Methods</li> <li class="phpdocumentor-on-this-page-section__title">Methods</li>
<li> <li>
<ul class="phpdocumentor-list -clean"> <ul class="phpdocumentor-list -clean">
<li><a href="classes/OCC-Basics-Traits-Setter.html#method___set">__set()</a></li> <li class=""><a href="classes/OCC-Basics-Traits-Setter.html#method___set">__set()</a></li>
<li><a href="classes/OCC-Basics-Traits-Setter.html#method___unset">__unset()</a></li> <li class=""><a href="classes/OCC-Basics-Traits-Setter.html#method___unset">__unset()</a></li>
</ul> </ul>
</li> </li>
</ul> </ul>

View File

@ -189,6 +189,7 @@
<p class="phpdocumentor-summary">Allows just a single instance of the class using this trait.</p> <p class="phpdocumentor-summary">Allows just a single instance of the class using this trait.</p>
<section class="phpdocumentor-description"><p>Get the singleton by calling the static method <code class="prettyprint">getInstance()</code>.</p> <section class="phpdocumentor-description"><p>Get the singleton by calling the static method <code class="prettyprint">getInstance()</code>.</p>
<p>If there is no object yet, the constructor is called with the same arguments <p>If there is no object yet, the constructor is called with the same arguments
as <code class="prettyprint">getInstance()</code>. Any later call will just return the already instantiated as <code class="prettyprint">getInstance()</code>. Any later call will just return the already instantiated
@ -213,7 +214,9 @@ as <code class="prettyprint">private</code> to prevent direct instantiation of t
</section> </section>
</dd> </dd>
</dl> </dl>
@ -239,21 +242,21 @@ as <code class="prettyprint">private</code> to prevent direct instantiation of t
</h4> </h4>
<dl class="phpdocumentor-table-of-contents"> <dl class="phpdocumentor-table-of-contents">
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Traits-Singleton.html#method___clone">__clone()</a> <a class="" href="classes/OCC-Basics-Traits-Singleton.html#method___clone">__clone()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
<dd>This is a singleton class, thus cloning is prohibited.</dd> <dd>This is a singleton class, thus cloning is prohibited.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Traits-Singleton.html#method_getInstance">getInstance()</a> <a class="" href="classes/OCC-Basics-Traits-Singleton.html#method_getInstance">getInstance()</a>
<span> <span>
&nbsp;: static </span> &nbsp;: static </span>
</dt> </dt>
<dd>Get a singleton instance of this class.</dd> <dd>Get a singleton instance of this class.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -private"> <dt class="phpdocumentor-table-of-contents__entry -method -private">
<a href="classes/OCC-Basics-Traits-Singleton.html#method___construct">__construct()</a> <a class="" href="classes/OCC-Basics-Traits-Singleton.html#method___construct">__construct()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
@ -304,6 +307,7 @@ as <code class="prettyprint">private</code> to prevent direct instantiation of t
<h5 class="phpdocumentor-tag-list__heading" id="tags"> <h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags Tags
<a href="classes/OCC-Basics-Traits-Singleton.html#method___clone#tags" class="headerlink"><i class="fas fa-link"></i></a> <a href="classes/OCC-Basics-Traits-Singleton.html#method___clone#tags" class="headerlink"><i class="fas fa-link"></i></a>
@ -323,6 +327,8 @@ as <code class="prettyprint">private</code> to prevent direct instantiation of t
</dl> </dl>
</article> </article>
<article <article
class="phpdocumentor-element class="phpdocumentor-element
@ -354,6 +360,7 @@ as <code class="prettyprint">private</code> to prevent direct instantiation of t
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -369,6 +376,8 @@ as <code class="prettyprint">private</code> to prevent direct instantiation of t
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">static</span> <span class="phpdocumentor-signature__response_type">static</span>
@ -409,6 +418,7 @@ as <code class="prettyprint">private</code> to prevent direct instantiation of t
<h5 class="phpdocumentor-tag-list__heading" id="tags"> <h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags Tags
<a href="classes/OCC-Basics-Traits-Singleton.html#method___construct#tags" class="headerlink"><i class="fas fa-link"></i></a> <a href="classes/OCC-Basics-Traits-Singleton.html#method___construct#tags" class="headerlink"><i class="fas fa-link"></i></a>
@ -428,6 +438,8 @@ as <code class="prettyprint">private</code> to prevent direct instantiation of t
</dl> </dl>
</article> </article>
</section> </section>
@ -540,9 +552,9 @@ as <code class="prettyprint">private</code> to prevent direct instantiation of t
<li class="phpdocumentor-on-this-page-section__title">Methods</li> <li class="phpdocumentor-on-this-page-section__title">Methods</li>
<li> <li>
<ul class="phpdocumentor-list -clean"> <ul class="phpdocumentor-list -clean">
<li><a href="classes/OCC-Basics-Traits-Singleton.html#method___clone">__clone()</a></li> <li class=""><a href="classes/OCC-Basics-Traits-Singleton.html#method___clone">__clone()</a></li>
<li><a href="classes/OCC-Basics-Traits-Singleton.html#method_getInstance">getInstance()</a></li> <li class=""><a href="classes/OCC-Basics-Traits-Singleton.html#method_getInstance">getInstance()</a></li>
<li><a href="classes/OCC-Basics-Traits-Singleton.html#method___construct">__construct()</a></li> <li class=""><a href="classes/OCC-Basics-Traits-Singleton.html#method___construct">__construct()</a></li>
</ul> </ul>
</li> </li>
</ul> </ul>

View File

@ -189,6 +189,7 @@
<p class="phpdocumentor-summary">A generic data type checker.</p> <p class="phpdocumentor-summary">A generic data type checker.</p>
<section class="phpdocumentor-description"><p>This allows to set a list of allowed atomic data types and fully qualified <section class="phpdocumentor-description"><p>This allows to set a list of allowed atomic data types and fully qualified
class names. It also provides a method to check if a value's data type class names. It also provides a method to check if a value's data type
matches at least one of these types.</p> matches at least one of these types.</p>
@ -210,7 +211,9 @@ matches at least one of these types.</p>
</section> </section>
</dd> </dd>
</dl> </dl>
@ -236,28 +239,28 @@ matches at least one of these types.</p>
</h4> </h4>
<dl class="phpdocumentor-table-of-contents"> <dl class="phpdocumentor-table-of-contents">
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Traits-TypeChecker.html#method_getAllowedTypes">getAllowedTypes()</a> <a class="" href="classes/OCC-Basics-Traits-TypeChecker.html#method_getAllowedTypes">getAllowedTypes()</a>
<span> <span>
&nbsp;: array&lt;string|int, string&gt; </span> &nbsp;: array&lt;string|int, string&gt; </span>
</dt> </dt>
<dd>Get allowed data types.</dd> <dd>Get allowed data types.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Traits-TypeChecker.html#method_hasAllowedType">hasAllowedType()</a> <a class="" href="classes/OCC-Basics-Traits-TypeChecker.html#method_hasAllowedType">hasAllowedType()</a>
<span> <span>
&nbsp;: bool </span> &nbsp;: bool </span>
</dt> </dt>
<dd>Check if a value&#039;s data type is allowed.</dd> <dd>Check if a value&#039;s data type is allowed.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Traits-TypeChecker.html#method_isAllowedType">isAllowedType()</a> <a class="" href="classes/OCC-Basics-Traits-TypeChecker.html#method_isAllowedType">isAllowedType()</a>
<span> <span>
&nbsp;: bool </span> &nbsp;: bool </span>
</dt> </dt>
<dd>Check if a data type is allowed.</dd> <dd>Check if a data type is allowed.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public"> <dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/OCC-Basics-Traits-TypeChecker.html#method_setAllowedTypes">setAllowedTypes()</a> <a class="" href="classes/OCC-Basics-Traits-TypeChecker.html#method_setAllowedTypes">setAllowedTypes()</a>
<span> <span>
&nbsp;: void </span> &nbsp;: void </span>
</dt> </dt>
@ -310,6 +313,9 @@ matches at least one of these types.</p>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
@ -351,6 +357,7 @@ matches at least one of these types.</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -366,6 +373,8 @@ matches at least one of these types.</p>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">bool</span> <span class="phpdocumentor-signature__response_type">bool</span>
@ -406,6 +415,7 @@ matches at least one of these types.</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -421,6 +431,8 @@ matches at least one of these types.</p>
<section> <section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5> <h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">bool</span> <span class="phpdocumentor-signature__response_type">bool</span>
@ -461,6 +473,7 @@ matches at least one of these types.</p>
</div> </div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5> <h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list"> <dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry"> <dt class="phpdocumentor-argument-list__entry">
@ -494,6 +507,8 @@ matches at least one of these types.</p>
</dl> </dl>
</article> </article>
</section> </section>
@ -606,10 +621,10 @@ matches at least one of these types.</p>
<li class="phpdocumentor-on-this-page-section__title">Methods</li> <li class="phpdocumentor-on-this-page-section__title">Methods</li>
<li> <li>
<ul class="phpdocumentor-list -clean"> <ul class="phpdocumentor-list -clean">
<li><a href="classes/OCC-Basics-Traits-TypeChecker.html#method_getAllowedTypes">getAllowedTypes()</a></li> <li class=""><a href="classes/OCC-Basics-Traits-TypeChecker.html#method_getAllowedTypes">getAllowedTypes()</a></li>
<li><a href="classes/OCC-Basics-Traits-TypeChecker.html#method_hasAllowedType">hasAllowedType()</a></li> <li class=""><a href="classes/OCC-Basics-Traits-TypeChecker.html#method_hasAllowedType">hasAllowedType()</a></li>
<li><a href="classes/OCC-Basics-Traits-TypeChecker.html#method_isAllowedType">isAllowedType()</a></li> <li class=""><a href="classes/OCC-Basics-Traits-TypeChecker.html#method_isAllowedType">isAllowedType()</a></li>
<li><a href="classes/OCC-Basics-Traits-TypeChecker.html#method_setAllowedTypes">setAllowedTypes()</a></li> <li class=""><a href="classes/OCC-Basics-Traits-TypeChecker.html#method_setAllowedTypes">setAllowedTypes()</a></li>
</ul> </ul>
</li> </li>
</ul> </ul>

View File

@ -99,6 +99,7 @@
/* Base Styles /* Base Styles
-------------------------------------------------- */ -------------------------------------------------- */
body { body {
background-color: #fff;
color: var(--text-color); color: var(--text-color);
font-family: var(--font-primary); font-family: var(--font-primary);
font-size: var(--text-md); font-size: var(--text-md);
@ -494,7 +495,7 @@ div.phpdocumentor-list > ul,
ol.phpdocumentor-list, ol.phpdocumentor-list,
ul.phpdocumentor-list { ul.phpdocumentor-list {
margin-top: 0; margin-top: 0;
padding-left: var(--spacing-md); padding-left: var(--spacing-lg);
margin-bottom: var(--spacing-sm); margin-bottom: var(--spacing-sm);
} }
@ -1215,6 +1216,10 @@ is too big a fix and needs to be done in a new design iteration.
word-break: break-all; word-break: break-all;
line-height: normal; line-height: normal;
} }
.phpdocumentor-on-this-page__content li.-deprecated {
text-decoration: line-through;
}
} }
/* Used for screen readers and such */ /* Used for screen readers and such */

View File

@ -126,6 +126,10 @@
flex: 0 1 auto; flex: 0 1 auto;
} }
.phpdocumentor-table-of-contents .phpdocumentor-table-of-contents__entry > a.-deprecated {
text-decoration: line-through;
}
.phpdocumentor-table-of-contents .phpdocumentor-table-of-contents__entry > span { .phpdocumentor-table-of-contents .phpdocumentor-table-of-contents__entry > span {
flex: 1; flex: 1;
white-space: nowrap; white-space: nowrap;

View File

@ -176,6 +176,7 @@
<p class="phpdocumentor-summary">PHP Basics</p> <p class="phpdocumentor-summary">PHP Basics</p>
<section class="phpdocumentor-description"><p>Copyright (C) 2024 Sebastian Meyer <a href="mailto:sebastian.meyer@opencultureconsulting.com">sebastian.meyer@opencultureconsulting.com</a></p> <section class="phpdocumentor-description"><p>Copyright (C) 2024 Sebastian Meyer <a href="mailto:sebastian.meyer@opencultureconsulting.com">sebastian.meyer@opencultureconsulting.com</a></p>
<p>This program is free software: you can redistribute it and/or modify <p>This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by it under the terms of the GNU General Public License as published by
@ -193,6 +194,8 @@ along with this program. If not, see <a href="http://www.gnu.org/licenses/">http
<h3 id="toc"> <h3 id="toc">
Table of Contents Table of Contents
<a href="files/src-datastructures-exceptions-invaliddatatypeexception.html#toc" class="headerlink"><i class="fas fa-link"></i></a> <a href="files/src-datastructures-exceptions-invaliddatatypeexception.html#toc" class="headerlink"><i class="fas fa-link"></i></a>

View File

@ -176,6 +176,7 @@
<p class="phpdocumentor-summary">PHP Basics</p> <p class="phpdocumentor-summary">PHP Basics</p>
<section class="phpdocumentor-description"><p>Copyright (C) 2024 Sebastian Meyer <a href="mailto:sebastian.meyer@opencultureconsulting.com">sebastian.meyer@opencultureconsulting.com</a></p> <section class="phpdocumentor-description"><p>Copyright (C) 2024 Sebastian Meyer <a href="mailto:sebastian.meyer@opencultureconsulting.com">sebastian.meyer@opencultureconsulting.com</a></p>
<p>This program is free software: you can redistribute it and/or modify <p>This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by it under the terms of the GNU General Public License as published by
@ -193,6 +194,8 @@ along with this program. If not, see <a href="http://www.gnu.org/licenses/">http
<h3 id="toc"> <h3 id="toc">
Table of Contents Table of Contents
<a href="files/src-datastructures-strictarray.html#toc" class="headerlink"><i class="fas fa-link"></i></a> <a href="files/src-datastructures-strictarray.html#toc" class="headerlink"><i class="fas fa-link"></i></a>

View File

@ -176,6 +176,7 @@
<p class="phpdocumentor-summary">PHP Basics</p> <p class="phpdocumentor-summary">PHP Basics</p>
<section class="phpdocumentor-description"><p>Copyright (C) 2024 Sebastian Meyer <a href="mailto:sebastian.meyer@opencultureconsulting.com">sebastian.meyer@opencultureconsulting.com</a></p> <section class="phpdocumentor-description"><p>Copyright (C) 2024 Sebastian Meyer <a href="mailto:sebastian.meyer@opencultureconsulting.com">sebastian.meyer@opencultureconsulting.com</a></p>
<p>This program is free software: you can redistribute it and/or modify <p>This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by it under the terms of the GNU General Public License as published by
@ -193,6 +194,8 @@ along with this program. If not, see <a href="http://www.gnu.org/licenses/">http
<h3 id="toc"> <h3 id="toc">
Table of Contents Table of Contents
<a href="files/src-datastructures-strictcollection.html#toc" class="headerlink"><i class="fas fa-link"></i></a> <a href="files/src-datastructures-strictcollection.html#toc" class="headerlink"><i class="fas fa-link"></i></a>

View File

@ -176,6 +176,7 @@
<p class="phpdocumentor-summary">PHP Basics</p> <p class="phpdocumentor-summary">PHP Basics</p>
<section class="phpdocumentor-description"><p>Copyright (C) 2024 Sebastian Meyer <a href="mailto:sebastian.meyer@opencultureconsulting.com">sebastian.meyer@opencultureconsulting.com</a></p> <section class="phpdocumentor-description"><p>Copyright (C) 2024 Sebastian Meyer <a href="mailto:sebastian.meyer@opencultureconsulting.com">sebastian.meyer@opencultureconsulting.com</a></p>
<p>This program is free software: you can redistribute it and/or modify <p>This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by it under the terms of the GNU General Public License as published by
@ -193,6 +194,8 @@ along with this program. If not, see <a href="http://www.gnu.org/licenses/">http
<h3 id="toc"> <h3 id="toc">
Table of Contents Table of Contents
<a href="files/src-datastructures-strictlist.html#toc" class="headerlink"><i class="fas fa-link"></i></a> <a href="files/src-datastructures-strictlist.html#toc" class="headerlink"><i class="fas fa-link"></i></a>

View File

@ -176,6 +176,7 @@
<p class="phpdocumentor-summary">PHP Basics</p> <p class="phpdocumentor-summary">PHP Basics</p>
<section class="phpdocumentor-description"><p>Copyright (C) 2024 Sebastian Meyer <a href="mailto:sebastian.meyer@opencultureconsulting.com">sebastian.meyer@opencultureconsulting.com</a></p> <section class="phpdocumentor-description"><p>Copyright (C) 2024 Sebastian Meyer <a href="mailto:sebastian.meyer@opencultureconsulting.com">sebastian.meyer@opencultureconsulting.com</a></p>
<p>This program is free software: you can redistribute it and/or modify <p>This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by it under the terms of the GNU General Public License as published by
@ -193,6 +194,8 @@ along with this program. If not, see <a href="http://www.gnu.org/licenses/">http
<h3 id="toc"> <h3 id="toc">
Table of Contents Table of Contents
<a href="files/src-datastructures-strictqueue.html#toc" class="headerlink"><i class="fas fa-link"></i></a> <a href="files/src-datastructures-strictqueue.html#toc" class="headerlink"><i class="fas fa-link"></i></a>

View File

@ -176,6 +176,7 @@
<p class="phpdocumentor-summary">PHP Basics</p> <p class="phpdocumentor-summary">PHP Basics</p>
<section class="phpdocumentor-description"><p>Copyright (C) 2024 Sebastian Meyer <a href="mailto:sebastian.meyer@opencultureconsulting.com">sebastian.meyer@opencultureconsulting.com</a></p> <section class="phpdocumentor-description"><p>Copyright (C) 2024 Sebastian Meyer <a href="mailto:sebastian.meyer@opencultureconsulting.com">sebastian.meyer@opencultureconsulting.com</a></p>
<p>This program is free software: you can redistribute it and/or modify <p>This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by it under the terms of the GNU General Public License as published by
@ -193,6 +194,8 @@ along with this program. If not, see <a href="http://www.gnu.org/licenses/">http
<h3 id="toc"> <h3 id="toc">
Table of Contents Table of Contents
<a href="files/src-datastructures-strictstack.html#toc" class="headerlink"><i class="fas fa-link"></i></a> <a href="files/src-datastructures-strictstack.html#toc" class="headerlink"><i class="fas fa-link"></i></a>

View File

@ -176,6 +176,7 @@
<p class="phpdocumentor-summary">PHP Basics</p> <p class="phpdocumentor-summary">PHP Basics</p>
<section class="phpdocumentor-description"><p>Copyright (C) 2024 Sebastian Meyer <a href="mailto:sebastian.meyer@opencultureconsulting.com">sebastian.meyer@opencultureconsulting.com</a></p> <section class="phpdocumentor-description"><p>Copyright (C) 2024 Sebastian Meyer <a href="mailto:sebastian.meyer@opencultureconsulting.com">sebastian.meyer@opencultureconsulting.com</a></p>
<p>This program is free software: you can redistribute it and/or modify <p>This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by it under the terms of the GNU General Public License as published by
@ -193,6 +194,8 @@ along with this program. If not, see <a href="http://www.gnu.org/licenses/">http
<h3 id="toc"> <h3 id="toc">
Table of Contents Table of Contents
<a href="files/src-datastructures-traits-strictspldoublylinkedlisttrait.html#toc" class="headerlink"><i class="fas fa-link"></i></a> <a href="files/src-datastructures-traits-strictspldoublylinkedlisttrait.html#toc" class="headerlink"><i class="fas fa-link"></i></a>

View File

@ -176,6 +176,7 @@
<p class="phpdocumentor-summary">PHP Basics</p> <p class="phpdocumentor-summary">PHP Basics</p>
<section class="phpdocumentor-description"><p>Copyright (C) 2024 Sebastian Meyer <a href="mailto:sebastian.meyer@opencultureconsulting.com">sebastian.meyer@opencultureconsulting.com</a></p> <section class="phpdocumentor-description"><p>Copyright (C) 2024 Sebastian Meyer <a href="mailto:sebastian.meyer@opencultureconsulting.com">sebastian.meyer@opencultureconsulting.com</a></p>
<p>This program is free software: you can redistribute it and/or modify <p>This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by it under the terms of the GNU General Public License as published by
@ -193,6 +194,8 @@ along with this program. If not, see <a href="http://www.gnu.org/licenses/">http
<h3 id="toc"> <h3 id="toc">
Table of Contents Table of Contents
<a href="files/src-errorhandlers-throwerrorexception.html#toc" class="headerlink"><i class="fas fa-link"></i></a> <a href="files/src-errorhandlers-throwerrorexception.html#toc" class="headerlink"><i class="fas fa-link"></i></a>

View File

@ -176,6 +176,7 @@
<p class="phpdocumentor-summary">PHP Basics</p> <p class="phpdocumentor-summary">PHP Basics</p>
<section class="phpdocumentor-description"><p>Copyright (C) 2024 Sebastian Meyer <a href="mailto:sebastian.meyer@opencultureconsulting.com">sebastian.meyer@opencultureconsulting.com</a></p> <section class="phpdocumentor-description"><p>Copyright (C) 2024 Sebastian Meyer <a href="mailto:sebastian.meyer@opencultureconsulting.com">sebastian.meyer@opencultureconsulting.com</a></p>
<p>This program is free software: you can redistribute it and/or modify <p>This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by it under the terms of the GNU General Public License as published by
@ -193,6 +194,8 @@ along with this program. If not, see <a href="http://www.gnu.org/licenses/">http
<h3 id="toc"> <h3 id="toc">
Table of Contents Table of Contents
<a href="files/src-errorhandlers-triggerexceptionerror.html#toc" class="headerlink"><i class="fas fa-link"></i></a> <a href="files/src-errorhandlers-triggerexceptionerror.html#toc" class="headerlink"><i class="fas fa-link"></i></a>

View File

@ -176,6 +176,7 @@
<p class="phpdocumentor-summary">PHP Basics</p> <p class="phpdocumentor-summary">PHP Basics</p>
<section class="phpdocumentor-description"><p>Copyright (C) 2024 Sebastian Meyer <a href="mailto:sebastian.meyer@opencultureconsulting.com">sebastian.meyer@opencultureconsulting.com</a></p> <section class="phpdocumentor-description"><p>Copyright (C) 2024 Sebastian Meyer <a href="mailto:sebastian.meyer@opencultureconsulting.com">sebastian.meyer@opencultureconsulting.com</a></p>
<p>This program is free software: you can redistribute it and/or modify <p>This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by it under the terms of the GNU General Public License as published by
@ -193,6 +194,8 @@ along with this program. If not, see <a href="http://www.gnu.org/licenses/">http
<h3 id="toc"> <h3 id="toc">
Table of Contents Table of Contents
<a href="files/src-interfaces-arrayaccesstrait.html#toc" class="headerlink"><i class="fas fa-link"></i></a> <a href="files/src-interfaces-arrayaccesstrait.html#toc" class="headerlink"><i class="fas fa-link"></i></a>

View File

@ -176,6 +176,7 @@
<p class="phpdocumentor-summary">PHP Basics</p> <p class="phpdocumentor-summary">PHP Basics</p>
<section class="phpdocumentor-description"><p>Copyright (C) 2024 Sebastian Meyer <a href="mailto:sebastian.meyer@opencultureconsulting.com">sebastian.meyer@opencultureconsulting.com</a></p> <section class="phpdocumentor-description"><p>Copyright (C) 2024 Sebastian Meyer <a href="mailto:sebastian.meyer@opencultureconsulting.com">sebastian.meyer@opencultureconsulting.com</a></p>
<p>This program is free software: you can redistribute it and/or modify <p>This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by it under the terms of the GNU General Public License as published by
@ -193,6 +194,8 @@ along with this program. If not, see <a href="http://www.gnu.org/licenses/">http
<h3 id="toc"> <h3 id="toc">
Table of Contents Table of Contents
<a href="files/src-interfaces-countabletrait.html#toc" class="headerlink"><i class="fas fa-link"></i></a> <a href="files/src-interfaces-countabletrait.html#toc" class="headerlink"><i class="fas fa-link"></i></a>

View File

@ -176,6 +176,7 @@
<p class="phpdocumentor-summary">PHP Basics</p> <p class="phpdocumentor-summary">PHP Basics</p>
<section class="phpdocumentor-description"><p>Copyright (C) 2024 Sebastian Meyer <a href="mailto:sebastian.meyer@opencultureconsulting.com">sebastian.meyer@opencultureconsulting.com</a></p> <section class="phpdocumentor-description"><p>Copyright (C) 2024 Sebastian Meyer <a href="mailto:sebastian.meyer@opencultureconsulting.com">sebastian.meyer@opencultureconsulting.com</a></p>
<p>This program is free software: you can redistribute it and/or modify <p>This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by it under the terms of the GNU General Public License as published by
@ -193,6 +194,8 @@ along with this program. If not, see <a href="http://www.gnu.org/licenses/">http
<h3 id="toc"> <h3 id="toc">
Table of Contents Table of Contents
<a href="files/src-interfaces-iteratoraggregatetrait.html#toc" class="headerlink"><i class="fas fa-link"></i></a> <a href="files/src-interfaces-iteratoraggregatetrait.html#toc" class="headerlink"><i class="fas fa-link"></i></a>

View File

@ -176,6 +176,7 @@
<p class="phpdocumentor-summary">PHP Basics</p> <p class="phpdocumentor-summary">PHP Basics</p>
<section class="phpdocumentor-description"><p>Copyright (C) 2024 Sebastian Meyer <a href="mailto:sebastian.meyer@opencultureconsulting.com">sebastian.meyer@opencultureconsulting.com</a></p> <section class="phpdocumentor-description"><p>Copyright (C) 2024 Sebastian Meyer <a href="mailto:sebastian.meyer@opencultureconsulting.com">sebastian.meyer@opencultureconsulting.com</a></p>
<p>This program is free software: you can redistribute it and/or modify <p>This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by it under the terms of the GNU General Public License as published by
@ -193,6 +194,8 @@ along with this program. If not, see <a href="http://www.gnu.org/licenses/">http
<h3 id="toc"> <h3 id="toc">
Table of Contents Table of Contents
<a href="files/src-interfaces-iteratortrait.html#toc" class="headerlink"><i class="fas fa-link"></i></a> <a href="files/src-interfaces-iteratortrait.html#toc" class="headerlink"><i class="fas fa-link"></i></a>

View File

@ -176,6 +176,7 @@
<p class="phpdocumentor-summary">PHP Basics</p> <p class="phpdocumentor-summary">PHP Basics</p>
<section class="phpdocumentor-description"><p>Copyright (C) 2024 Sebastian Meyer <a href="mailto:sebastian.meyer@opencultureconsulting.com">sebastian.meyer@opencultureconsulting.com</a></p> <section class="phpdocumentor-description"><p>Copyright (C) 2024 Sebastian Meyer <a href="mailto:sebastian.meyer@opencultureconsulting.com">sebastian.meyer@opencultureconsulting.com</a></p>
<p>This program is free software: you can redistribute it and/or modify <p>This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by it under the terms of the GNU General Public License as published by
@ -193,6 +194,8 @@ along with this program. If not, see <a href="http://www.gnu.org/licenses/">http
<h3 id="toc"> <h3 id="toc">
Table of Contents Table of Contents
<a href="files/src-traits-getter.html#toc" class="headerlink"><i class="fas fa-link"></i></a> <a href="files/src-traits-getter.html#toc" class="headerlink"><i class="fas fa-link"></i></a>

View File

@ -176,6 +176,7 @@
<p class="phpdocumentor-summary">PHP Basics</p> <p class="phpdocumentor-summary">PHP Basics</p>
<section class="phpdocumentor-description"><p>Copyright (C) 2024 Sebastian Meyer <a href="mailto:sebastian.meyer@opencultureconsulting.com">sebastian.meyer@opencultureconsulting.com</a></p> <section class="phpdocumentor-description"><p>Copyright (C) 2024 Sebastian Meyer <a href="mailto:sebastian.meyer@opencultureconsulting.com">sebastian.meyer@opencultureconsulting.com</a></p>
<p>This program is free software: you can redistribute it and/or modify <p>This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by it under the terms of the GNU General Public License as published by
@ -193,6 +194,8 @@ along with this program. If not, see <a href="http://www.gnu.org/licenses/">http
<h3 id="toc"> <h3 id="toc">
Table of Contents Table of Contents
<a href="files/src-traits-overloadinggetter.html#toc" class="headerlink"><i class="fas fa-link"></i></a> <a href="files/src-traits-overloadinggetter.html#toc" class="headerlink"><i class="fas fa-link"></i></a>

View File

@ -176,6 +176,7 @@
<p class="phpdocumentor-summary">PHP Basics</p> <p class="phpdocumentor-summary">PHP Basics</p>
<section class="phpdocumentor-description"><p>Copyright (C) 2024 Sebastian Meyer <a href="mailto:sebastian.meyer@opencultureconsulting.com">sebastian.meyer@opencultureconsulting.com</a></p> <section class="phpdocumentor-description"><p>Copyright (C) 2024 Sebastian Meyer <a href="mailto:sebastian.meyer@opencultureconsulting.com">sebastian.meyer@opencultureconsulting.com</a></p>
<p>This program is free software: you can redistribute it and/or modify <p>This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by it under the terms of the GNU General Public License as published by
@ -193,6 +194,8 @@ along with this program. If not, see <a href="http://www.gnu.org/licenses/">http
<h3 id="toc"> <h3 id="toc">
Table of Contents Table of Contents
<a href="files/src-traits-overloadingsetter.html#toc" class="headerlink"><i class="fas fa-link"></i></a> <a href="files/src-traits-overloadingsetter.html#toc" class="headerlink"><i class="fas fa-link"></i></a>

View File

@ -176,6 +176,7 @@
<p class="phpdocumentor-summary">PHP Basics</p> <p class="phpdocumentor-summary">PHP Basics</p>
<section class="phpdocumentor-description"><p>Copyright (C) 2024 Sebastian Meyer <a href="mailto:sebastian.meyer@opencultureconsulting.com">sebastian.meyer@opencultureconsulting.com</a></p> <section class="phpdocumentor-description"><p>Copyright (C) 2024 Sebastian Meyer <a href="mailto:sebastian.meyer@opencultureconsulting.com">sebastian.meyer@opencultureconsulting.com</a></p>
<p>This program is free software: you can redistribute it and/or modify <p>This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by it under the terms of the GNU General Public License as published by
@ -193,6 +194,8 @@ along with this program. If not, see <a href="http://www.gnu.org/licenses/">http
<h3 id="toc"> <h3 id="toc">
Table of Contents Table of Contents
<a href="files/src-traits-setter.html#toc" class="headerlink"><i class="fas fa-link"></i></a> <a href="files/src-traits-setter.html#toc" class="headerlink"><i class="fas fa-link"></i></a>

View File

@ -176,6 +176,7 @@
<p class="phpdocumentor-summary">PHP Basics</p> <p class="phpdocumentor-summary">PHP Basics</p>
<section class="phpdocumentor-description"><p>Copyright (C) 2024 Sebastian Meyer <a href="mailto:sebastian.meyer@opencultureconsulting.com">sebastian.meyer@opencultureconsulting.com</a></p> <section class="phpdocumentor-description"><p>Copyright (C) 2024 Sebastian Meyer <a href="mailto:sebastian.meyer@opencultureconsulting.com">sebastian.meyer@opencultureconsulting.com</a></p>
<p>This program is free software: you can redistribute it and/or modify <p>This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by it under the terms of the GNU General Public License as published by
@ -193,6 +194,8 @@ along with this program. If not, see <a href="http://www.gnu.org/licenses/">http
<h3 id="toc"> <h3 id="toc">
Table of Contents Table of Contents
<a href="files/src-traits-singleton.html#toc" class="headerlink"><i class="fas fa-link"></i></a> <a href="files/src-traits-singleton.html#toc" class="headerlink"><i class="fas fa-link"></i></a>

View File

@ -176,6 +176,7 @@
<p class="phpdocumentor-summary">PHP Basics</p> <p class="phpdocumentor-summary">PHP Basics</p>
<section class="phpdocumentor-description"><p>Copyright (C) 2024 Sebastian Meyer <a href="mailto:sebastian.meyer@opencultureconsulting.com">sebastian.meyer@opencultureconsulting.com</a></p> <section class="phpdocumentor-description"><p>Copyright (C) 2024 Sebastian Meyer <a href="mailto:sebastian.meyer@opencultureconsulting.com">sebastian.meyer@opencultureconsulting.com</a></p>
<p>This program is free software: you can redistribute it and/or modify <p>This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by it under the terms of the GNU General Public License as published by
@ -193,6 +194,8 @@ along with this program. If not, see <a href="http://www.gnu.org/licenses/">http
<h3 id="toc"> <h3 id="toc">
Table of Contents Table of Contents
<a href="files/src-traits-typechecker.html#toc" class="headerlink"><i class="fas fa-link"></i></a> <a href="files/src-traits-typechecker.html#toc" class="headerlink"><i class="fas fa-link"></i></a>

View File

@ -83,7 +83,7 @@ class StrictArray extends StrictCollection implements Iterator
*/ */
public function pop(): mixed public function pop(): mixed
{ {
if ($this->count() === 0) { if (count($this->_data) === 0) {
throw new RuntimeException( throw new RuntimeException(
'Cannot return last item: array is empty.' 'Cannot return last item: array is empty.'
); );
@ -126,7 +126,7 @@ class StrictArray extends StrictCollection implements Iterator
*/ */
public function shift(): mixed public function shift(): mixed
{ {
if ($this->count() === 0) { if (count($this->_data) === 0) {
throw new RuntimeException( throw new RuntimeException(
'Cannot return first item: array is empty.' 'Cannot return first item: array is empty.'
); );

View File

@ -35,6 +35,8 @@ use function error_reporting;
* *
* > Usage: `set_error_handler(new ThrowErrorException());` * > Usage: `set_error_handler(new ThrowErrorException());`
* *
* @api
*
* @author Sebastian Meyer <sebastian.meyer@opencultureconsulting.com> * @author Sebastian Meyer <sebastian.meyer@opencultureconsulting.com>
* @package Basics\ErrorHandlers * @package Basics\ErrorHandlers
*/ */

View File

@ -36,6 +36,8 @@ use function trigger_error;
* *
* > Usage: `set_exception_handler(new TriggerExceptionError());` * > Usage: `set_exception_handler(new TriggerExceptionError());`
* *
* @api
*
* @author Sebastian Meyer <sebastian.meyer@opencultureconsulting.com> * @author Sebastian Meyer <sebastian.meyer@opencultureconsulting.com>
* @package Basics\ErrorHandlers * @package Basics\ErrorHandlers
*/ */

View File

@ -169,18 +169,88 @@
<div class="phpdocumentor-column -nine phpdocumentor-content"> <div class="phpdocumentor-column -nine phpdocumentor-content">
<div class="section" id="changelog"> <div class="section" id="changelog">
<h1>Changelog</h1> <h1>Changelog</h1>
<div class="admonition-wrapper"> <div class="admonition-wrapper">
<div class="admonition admonition-sidebar"><p class="sidebar-title">Table of Contents</p> <div class="admonition admonition-sidebar"><p class="sidebar-title">Table of Contents</p>
<div class="contents"><ul class="phpdocumentor-list"><li class="toc-item"><a href="guides/changelog.html#v2-1-0">v2.1.0</a></li><li class="toc-item"><a href="guides/changelog.html#v2-0-0">v2.0.0</a></li><li class="toc-item"><a href="guides/changelog.html#v1-1-0">v1.1.0</a></li><li class="toc-item"><a href="guides/changelog.html#v1-0-1">v1.0.1</a></li><li class="toc-item"><a href="guides/changelog.html#v1-0-0">v1.0.0</a></li></ul></div> <div class="contents">
<ul class="phpdocumentor-list">
<li class="toc-item">
<a href="guides/changelog.html#v2-1-1">v2.1.1</a>
</li>
<li class="toc-item">
<a href="guides/changelog.html#v2-1-0">v2.1.0</a>
</li>
<li class="toc-item">
<a href="guides/changelog.html#v2-0-0">v2.0.0</a>
</li>
<li class="toc-item">
<a href="guides/changelog.html#v1-1-0">v1.1.0</a>
</li>
<li class="toc-item">
<a href="guides/changelog.html#v1-0-1">v1.0.1</a>
</li>
<li class="toc-item">
<a href="guides/changelog.html#v1-0-0">v1.0.0</a>
</li>
</ul>
</div>
</div> </div>
</div> </div>
<div class="section" id="v2-1-0"> <div class="section" id="v2-1-1">
<h2>v2.1.0</h2> <h2>v2.1.1</h2>
<p><strong>New Features:</strong>
</p>
<ul>
<li>Added Composer commands for development tools (PHP_CodeSniffer, PHP-CS-Fixer, PHPStan, Psalm and phpDocumentor)</li>
</ul>
<p><strong>Minor Changes:</strong>
</p>
<ul>
<li>Extended <a href="https://opencultureconsulting.github.io/php-basics/">documentation</a></li>
</ul>
</div>
<div class="section" id="v2-1-0">
<h2>v2.1.0</h2>
<p><strong>Breaking Changes:</strong>
</p>
<p><strong>Breaking Changes:</strong></p>
<ul> <ul>
@ -191,7 +261,10 @@
</ul> </ul>
<p><strong>New Features:</strong></p>
<p><strong>New Features:</strong>
</p>
<ul> <ul>
@ -203,33 +276,47 @@
</div> </div>
<div class="section" id="v2-0-0"> <div class="section" id="v2-0-0">
<h2>v2.0.0</h2> <h2>v2.0.0</h2>
<p><strong>Breaking Changes:</strong>
</p>
<p><strong>Breaking Changes:</strong></p>
<ul> <ul>
<li>Raised minimum PHP version from 8.0 to 8.1 in order to use <a href="https://www.php.net/releases/8.1/">new features</a> like <li>Raised minimum PHP version from 8.0 to 8.1 in order to use <a href="https://www.php.net/releases/8.1/">new features</a> like
<a href="https://www.php.net/array_is_list">array_is_list()</a> and the spread operator on string-keyed arrays</li> <a href="https://www.php.net/array_is_list">array_is_list()</a> and the spread operator on string-keyed arrays</li>
<li><p><a href="namespaces/occ-basics-interfaces.html"><abbr title="\OCC\Basics\Interfaces">Interfaces</abbr></a> <li>
traits renamed and moved to different namespace</p><pre><code class="language-">OCC\Basics\InterfaceTraits\ArrayAccess -&gt; OCC\Basics\Interfaces\ArrayAccessTrait <p><a href="namespaces/occ-basics-interfaces.html"><abbr title="\OCC\Basics\Interfaces">Interfaces</abbr></a>
traits renamed and moved to different namespace</p>
<pre><code class="language-">OCC\Basics\InterfaceTraits\ArrayAccess -&gt; OCC\Basics\Interfaces\ArrayAccessTrait
OCC\Basics\InterfaceTraits\Countable -&gt; OCC\Basics\Interfaces\CountableTrait OCC\Basics\InterfaceTraits\Countable -&gt; OCC\Basics\Interfaces\CountableTrait
OCC\Basics\InterfaceTraits\IteratorAggregate -&gt; OCC\Basics\Interfaces\IteratorAggregateTrait OCC\Basics\InterfaceTraits\IteratorAggregate -&gt; OCC\Basics\Interfaces\IteratorAggregateTrait
OCC\Basics\InterfaceTraits\Iterator -&gt; OCC\Basics\Interfaces\IteratorTrait</code></pre></li> OCC\Basics\InterfaceTraits\Iterator -&gt; OCC\Basics\Interfaces\IteratorTrait</code></pre>
</li>
<li><p>Prefixed internal methods for <a href="classes/OCC-Basics-Traits-Getter.html"><abbr title="\OCC\Basics\Traits\Getter">Getter</abbr></a> <li>
<p>Prefixed internal methods for <a href="classes/OCC-Basics-Traits-Getter.html"><abbr title="\OCC\Basics\Traits\Getter">Getter</abbr></a>
and <a href="classes/OCC-Basics-Traits-Setter.html"><abbr title="\OCC\Basics\Traits\Setter">Setter</abbr></a> and <a href="classes/OCC-Basics-Traits-Setter.html"><abbr title="\OCC\Basics\Traits\Setter">Setter</abbr></a>
with with
<code>_</code> to avoid confusion with regular class methods</p><pre><code class="language-php">// old methods <code>_</code>
to avoid confusion with regular class methods</p>
<pre><code class="language-php">// old methods
function magicGet{Property}(): mixed function magicGet{Property}(): mixed
function magicSet{Property}(mixed $value): void</code></pre><pre><code class="language-php">// new methods function magicSet{Property}(mixed $value): void</code></pre>
<pre><code class="language-php">// new methods
function _magicGet{Property}(): mixed function _magicGet{Property}(): mixed
function _magicSet{Property}(mixed $value): void</code></pre></li> function _magicSet{Property}(mixed $value): void</code></pre>
</li>
</ul> </ul>
<p><strong>New Features:</strong></p>
<p><strong>New Features:</strong>
</p>
<ul> <ul>
@ -251,12 +338,21 @@ function _magicSet{Property}(mixed $value): void</code></pre></li>
<li>Added new trait <a href="classes/OCC-Basics-Traits-TypeChecker.html"><abbr title="\OCC\Basics\Traits\TypeChecker">TypeChecker</abbr></a> <li>Added new trait <a href="classes/OCC-Basics-Traits-TypeChecker.html"><abbr title="\OCC\Basics\Traits\TypeChecker">TypeChecker</abbr></a>
</li> </li>
<li>Extended API for all datastructures (see <a href=""></a> <li>Extended API for all datastructures (see <a href="classes/OCC-Basics-DataStructures-Traits-StrictSplDoublyLinkedListTrait.html"><abbr title="\OCC\Basics\DataStructures\Traits\StrictSplDoublyLinkedListTrait">StrictSplDoublyLinkedListTrait</abbr></a>
)</li> )</li>
<li>Introduced <a href="classes/OCC-Basics-DataStructures-Exceptions-InvalidDataTypeException.html"><abbr title="\OCC\Basics\DataStructures\Exceptions\InvalidDataTypeException">InvalidDataTypeException</abbr></a> <li>Introduced <a href="classes/OCC-Basics-DataStructures-Exceptions-InvalidDataTypeException.html"><abbr title="\OCC\Basics\DataStructures\Exceptions\InvalidDataTypeException">InvalidDataTypeException</abbr></a>
for strict datastructures</li> for strict datastructures</li>
</ul>
<p><strong>Minor Changes:</strong>
</p>
<ul>
<li>Extended <a href="https://opencultureconsulting.github.io/php-basics/">documentation</a></li> <li>Extended <a href="https://opencultureconsulting.github.io/php-basics/">documentation</a></li>
</ul> </ul>
@ -264,26 +360,36 @@ function _magicSet{Property}(mixed $value): void</code></pre></li>
</div> </div>
<div class="section" id="v1-1-0"> <div class="section" id="v1-1-0">
<h2>v1.1.0</h2> <h2>v1.1.0</h2>
<p><strong>Breaking Changes:</strong>
</p>
<p><strong>Breaking Changes:</strong></p>
<ul> <ul>
<li><p>Changed the constructor&#039;s signature for all <a href="namespaces/occ-basics-datastructures.html"><abbr title="\OCC\Basics\DataStructures">DataStructures</abbr></a> <li>
<p>Changed the constructor&#039;s signature for all <a href="namespaces/occ-basics-datastructures.html"><abbr title="\OCC\Basics\DataStructures">DataStructures</abbr></a>
to improve compatibility with to improve compatibility with
the corresponding <a href="https://www.php.net/spl.datastructures">SPL datastructures</a></p><pre><code class="language-php">// old constructor signature the corresponding <a href="https://www.php.net/spl.datastructures">SPL datastructures</a></p>
public function __construct(iterable $items = [], array $allowedTypes = [])</code></pre><pre><code class="language-php">// new constructor signature <pre><code class="language-php">// old constructor signature
public function __construct(array $allowedTypes = [])</code></pre></li> public function __construct(iterable $items = [], array $allowedTypes = [])</code></pre>
<pre><code class="language-php">// new constructor signature
public function __construct(array $allowedTypes = [])</code></pre>
</li>
</ul> </ul>
</div> </div>
<div class="section" id="v1-0-1"> <div class="section" id="v1-0-1">
<h2>v1.0.1</h2> <h2>v1.0.1</h2>
<p><strong>Minor Changes:</strong>
</p>
<p><strong>New Features:</strong></p>
<ul> <ul>
@ -295,9 +401,12 @@ public function __construct(array $allowedTypes = [])</code></pre></li>
</div> </div>
<div class="section" id="v1-0-0"> <div class="section" id="v1-0-0">
<h2>v1.0.0</h2> <h2>v1.0.0</h2>
<p><strong>Initial Release</strong>
</p>
<p><strong>Initial Release</strong></p>
</div> </div>
</div> </div>
@ -315,7 +424,7 @@ public function __construct(array $allowedTypes = [])</code></pre></li>
</section> </section>
</section> </section>
</div> </div>
<a href="guides/changelog.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a> <a href="#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
</main> </main>

View File

@ -169,40 +169,102 @@
<div class="phpdocumentor-column -nine phpdocumentor-content"> <div class="phpdocumentor-column -nine phpdocumentor-content">
<div class="section" id="documentation"> <div class="section" id="documentation">
<h1>Documentation</h1> <h1>Documentation</h1>
<div class="toc"> <div class="toc">
<ul class="phpdocumentor-list"> <ul class="phpdocumentor-list">
<li class="toc-item"><a href="guides/overview/index.html#overview">Overview</a> <ul class="menu-level-1"> <li class="toc-item">
<li class="toc-item"><a href="guides/overview/datastructures.html#typed-datastructures">Typed Datastructures</a></li> <a href="guides/overview/index.html#overview">Overview</a>
<ul class="menu-level-1">
<li class="toc-item">
<a href="guides/overview/datastructures.html#typed-datastructures">Typed Datastructures</a>
<li class="toc-item"><a href="guides/overview/errorhandlers.html#error-and-exception-handlers">Error and Exception Handlers</a></li>
<li class="toc-item"><a href="guides/overview/interfaces.html#interface-traits">Interface Traits</a></li> </li>
<li class="toc-item"><a href="guides/overview/traits.html#traits">Traits</a></li> <li class="toc-item">
<a href="guides/overview/errorhandlers.html#error-and-exception-handlers">Error and Exception Handlers</a>
</ul></li>
<li class="toc-item"><a href="guides/usage/index.html#user-guide">User Guide</a> <ul class="menu-level-1"> </li>
<li class="toc-item"><a href="guides/usage/requirements.html#requirements">Requirements</a></li>
<li class="toc-item"><a href="guides/usage/installation.html#installation">Installation</a></li> <li class="toc-item">
<a href="guides/overview/interfaces.html#interface-traits">Interface Traits</a>
</ul></li>
<li class="toc-item"><a href="guides/changelog.html#changelog">Changelog</a> <ul class="section-level-1"> </li>
<li class="toc-item"><a href="guides/changelog.html#v2-1-0">v2.1.0</a></li>
<li class="toc-item"><a href="guides/changelog.html#v2-0-0">v2.0.0</a></li> <li class="toc-item">
<a href="guides/overview/traits.html#traits">Traits</a>
<li class="toc-item"><a href="guides/changelog.html#v1-1-0">v1.1.0</a></li>
<li class="toc-item"><a href="guides/changelog.html#v1-0-1">v1.0.1</a></li> </li>
<li class="toc-item"><a href="guides/changelog.html#v1-0-0">v1.0.0</a></li> </ul>
</ul></li> </li>
<li class="toc-item">
<a href="guides/usage/index.html#user-guide">User Guide</a>
<ul class="menu-level-1">
<li class="toc-item">
<a href="guides/usage/requirements.html#requirements">Requirements</a>
</li>
<li class="toc-item">
<a href="guides/usage/installation.html#installation">Installation</a>
</li>
</ul>
</li>
<li class="toc-item">
<a href="guides/changelog.html#changelog">Changelog</a>
<ul class="section-level-1">
<li class="toc-item">
<a href="guides/changelog.html#v2-1-1">v2.1.1</a>
</li>
<li class="toc-item">
<a href="guides/changelog.html#v2-1-0">v2.1.0</a>
</li>
<li class="toc-item">
<a href="guides/changelog.html#v2-0-0">v2.0.0</a>
</li>
<li class="toc-item">
<a href="guides/changelog.html#v1-1-0">v1.1.0</a>
</li>
<li class="toc-item">
<a href="guides/changelog.html#v1-0-1">v1.0.1</a>
</li>
<li class="toc-item">
<a href="guides/changelog.html#v1-0-0">v1.0.0</a>
</li>
</ul>
</li>
</ul> </ul>
</div> </div>
@ -222,7 +284,7 @@
</section> </section>
</section> </section>
</div> </div>
<a href="guides/index.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a> <a href="#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
</main> </main>

View File

@ -169,29 +169,92 @@
<div class="phpdocumentor-column -nine phpdocumentor-content"> <div class="phpdocumentor-column -nine phpdocumentor-content">
<div class="section" id="typed-datastructures"> <div class="section" id="typed-datastructures">
<h1>Typed Datastructures</h1> <h1>Typed Datastructures</h1>
<div class="admonition-wrapper"> <div class="admonition-wrapper">
<div class="admonition admonition-sidebar"><p class="sidebar-title">Table of Contents</p> <div class="admonition admonition-sidebar"><p class="sidebar-title">Table of Contents</p>
<div class="contents"><ul class="phpdocumentor-list"><li class="toc-item"><a href="guides/overview/datastructures.html#strictcollection">StrictCollection</a></li><li class="toc-item"><a href="guides/overview/datastructures.html#strictarray">StrictArray</a></li><li class="toc-item"><a href="guides/overview/datastructures.html#strictlist">StrictList</a></li><li class="toc-item"><a href="guides/overview/datastructures.html#strictqueue">StrictQueue</a></li><li class="toc-item"><a href="guides/overview/datastructures.html#strictstack">StrictStack</a></li></ul></div> <div class="contents">
<ul class="phpdocumentor-list">
<li class="toc-item">
<a href="guides/overview/datastructures.html#strictcollection">StrictCollection</a>
</li>
<li class="toc-item">
<a href="guides/overview/datastructures.html#strictarray">StrictArray</a>
</li>
<li class="toc-item">
<a href="guides/overview/datastructures.html#strictlist">StrictList</a>
</li>
<li class="toc-item">
<a href="guides/overview/datastructures.html#strictqueue">StrictQueue</a>
</li>
<li class="toc-item">
<a href="guides/overview/datastructures.html#strictstack">StrictStack</a>
</li>
</ul>
</div>
</div> </div>
</div> </div>
<p>The datastructures in this package are derived from their respective <a href="https://www.php.net/spl.datastructures">Standard PHP Library (SPL) counterparts</a> which they extend by the option to control the data types of items those
<p>The datastructures in this package are derived from their respective <a href="https://www.php.net/spl.datastructures">Standard PHP Library (SPL) counterparts</a> which they extend by the option to control the data types of items those
datastructures can hold.</p> datastructures can hold.</p>
<p>To restrict allowed data types for items, provide the constructor with an array of atomic types or fully qualified
class names you want to allow as item types. Available atomic types are <code>array</code>, <code>bool</code>, <code>callable</code>, <code>countable</code>,
<code>float</code> / <code>double</code>, <code>int</code> / <code>integer</code> / <code>long</code>, <code>iterable</code>, <code>null</code>, <code>numeric</code>, <code>object</code>, <code>resource</code>, <code>scalar</code> and <p>To restrict allowed data types for items provide the constructor with an array of atomic types or fully qualified class
<code>string</code>.</p> names (FQCN) you want to allow as item types. Available atomic types are <code>array</code>
<p>Trying to add an item with a data type not on the list of allowed types to a strict datastructure will result in an , <code>bool</code>
<a href="classes/OCC-Basics-DataStructures-Exceptions-InvalidDataTypeException.html"><abbr title="\OCC\Basics\DataStructures\Exceptions\InvalidDataTypeException">InvalidDataTypeException</abbr></a> , <code>callable</code>
, <code>countable</code>
,
<code>float</code>
(or <code>double</code>
), <code>int</code>
(or <code>integer</code>
or <code>long</code>
), <code>iterable</code>
, <code>null</code>
, <code>numeric</code>
, <code>object</code>
, <code>resource</code>
, <code>scalar</code>
and <code>string</code>
.</p> .</p>
<p>All strict datastructures inherit the implementation of the <a href="https://www.php.net/arrayaccess">\ArrayAccess</a>,
<p>Trying to add an item with a data type not on the list of allowed types to a strict datastructure will result in an
<a href="classes/OCC-Basics-DataStructures-Exceptions-InvalidDataTypeException.html"><abbr title="\OCC\Basics\DataStructures\Exceptions\InvalidDataTypeException">InvalidDataTypeException</abbr></a>
being thrown.</p>
<p>All strict datastructures inherit the implementation of the <a href="https://www.php.net/arrayaccess">\ArrayAccess</a>,
<a href="https://www.php.net/countable">\Countable</a> and <a href="https://www.php.net/serializable">\Serializable</a> interfaces. All <a href="https://www.php.net/countable">\Countable</a> and <a href="https://www.php.net/serializable">\Serializable</a> interfaces. All
but <code>StrictCollection</code> also implement a <a href="https://www.php.net/traversable">\Traversable</a> interface.</p> but <code>StrictCollection</code>
<blockquote><p>Examples:</p><pre><code class="language-php">// create a collection of strings also implement a <a href="https://www.php.net/traversable">\Traversable</a> interface.</p>
$stringCollection = new StrictCollection([&#039;string&#039;]);</code></pre><pre><code class="language-php">// create a queue of PSR-15 middlewares
$middlewareQueue = new StrictQueue([&#039;Psr\Http\Server\MiddlewareInterface&#039;]);</code></pre></blockquote> <blockquote>
<p>Examples:</p>
<pre><code class="language-php">// create a collection of strings
$stringCollection = new StrictCollection([&#039;string&#039;]);</code></pre>
<pre><code class="language-php">// create a queue of PSR-15 middlewares
$middlewareQueue = new StrictQueue([&#039;Psr\Http\Server\MiddlewareInterface&#039;]);</code></pre>
</blockquote>
<div class="admonition-wrapper"> <div class="admonition-wrapper">
<div class="admonition admonition-sidebar"><p class="sidebar-title">API Documentation</p> <div class="admonition admonition-sidebar"><p class="sidebar-title">API Documentation</p>
@ -207,18 +270,24 @@ $middlewareQueue = new StrictQueue([&#039;Psr\Http\Server\MiddlewareInterface&#0
</div> </div>
<div class="section" id="strictcollection"> <div class="section" id="strictcollection">
<h2>StrictCollection</h2> <h2>StrictCollection</h2>
<p><em>A type-sensitive, unsorted collection of items.</em></p>
<p>Holds items as key/value pairs where keys identify the items and have to be valid array keys while values can be of any <p><em>A type-sensitive, unsorted collection of items.</em>
</p>
<p>Holds items as key/value pairs where keys identify the items and have to be valid array keys while values can be of any
controlled type. The collection can be accessed like an array, but not traversed because it has no particular order.</p> controlled type. The collection can be accessed like an array, but not traversed because it has no particular order.</p>
<div class="phpdocumentor-admonition note"> <div class="phpdocumentor-admonition note">
<svg class="phpdocumentor-admonition__icon" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M7 8h10M7 12h4m1 8l-4-4H5a2 2 0 01-2-2V6a2 2 0 012-2h14a2 2 0 012 2v8a2 2 0 01-2 2h-3l-4 4z"></path></svg> <svg class="phpdocumentor-admonition__icon" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M7 8h10M7 12h4m1 8l-4-4H5a2 2 0 01-2-2V6a2 2 0 012-2h14a2 2 0 012 2v8a2 2 0 01-2 2h-3l-4 4z"></path></svg>
<article> <article>
<p>Internally it holds the items in the <code>$_data</code> array, the same as most <a href="guides/overview/interfaces.html">Interface Traits</a>
and <a href="guides/overview/traits.html">Traits</a> <p>Internally it holds the items in the <code>$_data</code>
of this array, the same as most <a href="guides/overview/interfaces.html">Interface Traits</a> and <a href="guides/overview/traits.html">Traits</a> of this
package.</p> package.</p>
</article> </article>
</div> </div>
@ -238,18 +307,24 @@ package.</p>
</div> </div>
<div class="section" id="strictarray"> <div class="section" id="strictarray">
<h2>StrictArray</h2> <h2>StrictArray</h2>
<p><em>A type-sensitive, traversable array of items.</em></p>
<p>Holds items as key/value pairs where keys identify the items and have to be valid array keys while values can be of any <p><em>A type-sensitive, traversable array of items.</em>
</p>
<p>Holds items as key/value pairs where keys identify the items and have to be valid array keys while values can be of any
controlled type. The array can be accessed and traversed just like any other array.</p> controlled type. The array can be accessed and traversed just like any other array.</p>
<div class="phpdocumentor-admonition note"> <div class="phpdocumentor-admonition note">
<svg class="phpdocumentor-admonition__icon" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M7 8h10M7 12h4m1 8l-4-4H5a2 2 0 01-2-2V6a2 2 0 012-2h14a2 2 0 012 2v8a2 2 0 01-2 2h-3l-4 4z"></path></svg> <svg class="phpdocumentor-admonition__icon" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M7 8h10M7 12h4m1 8l-4-4H5a2 2 0 01-2-2V6a2 2 0 012-2h14a2 2 0 012 2v8a2 2 0 01-2 2h-3l-4 4z"></path></svg>
<article> <article>
<p>Internally it holds the items in the <code>$_data</code> array, the same as most <a href="guides/overview/interfaces.html">Interface Traits</a>
and <a href="guides/overview/traits.html">Traits</a> <p>Internally it holds the items in the <code>$_data</code>
of this array, the same as most <a href="guides/overview/interfaces.html">Interface Traits</a> and <a href="guides/overview/traits.html">Traits</a> of this
package.</p> package.</p>
</article> </article>
</div> </div>
@ -269,11 +344,16 @@ package.</p>
</div> </div>
<div class="section" id="strictlist"> <div class="section" id="strictlist">
<h2>StrictList</h2> <h2>StrictList</h2>
<p><em>A type-sensitive, taversable list of items.</em></p>
<p>Extends <a href="https://www.php.net/spldoublylinkedlist">\SplDoublyLinkedList</a> with an option to restrict the allowed data <p><em>A type-sensitive, taversable list of items.</em>
</p>
<p>Extends <a href="https://www.php.net/spldoublylinkedlist">\SplDoublyLinkedList</a> with an option to restrict the allowed data
types for list items. The list can be accessed and traversed like an array, but has only consecutive numerical keys.</p> types for list items. The list can be accessed and traversed like an array, but has only consecutive numerical keys.</p>
<div class="admonition-wrapper"> <div class="admonition-wrapper">
<div class="admonition admonition-sidebar"><p class="sidebar-title">API Documentation</p> <div class="admonition admonition-sidebar"><p class="sidebar-title">API Documentation</p>
@ -290,14 +370,23 @@ types for list items. The list can be accessed and traversed like an array, but
</div> </div>
<div class="section" id="strictqueue"> <div class="section" id="strictqueue">
<h2>StrictQueue</h2> <h2>StrictQueue</h2>
<p><em>A type-sensitive, taversable queue (FIFO) of items.</em></p>
<p>Extends <a href="https://www.php.net/splqueue">\SplQueue</a> with an option to restrict the allowed data types for queue items. <p><em>A type-sensitive, taversable queue (FIFO) of items.</em>
</p>
<p>Extends <a href="https://www.php.net/splqueue">\SplQueue</a> with an option to restrict the allowed data types for queue items.
The queue can be accessed and traversed like an array, but has only consecutive numerical keys. Traversal follows the The queue can be accessed and traversed like an array, but has only consecutive numerical keys. Traversal follows the
first-in, first-out (FIFO) principle meaning that items are returned in the same order they were added to the queue.</p> first-in, first-out (FIFO) principle meaning that items are returned in the same order they were added to the queue.</p>
<p>It is recommended to use the <code>StrictQueue::enqueue()</code> and <code>StrictQueue::dequeue()</code> alias methods when working with a
<p>It is recommended to use the <code>StrictQueue::enqueue()</code>
and <code>StrictQueue::dequeue()</code>
alias methods when working with a
queue, because those will ensure proper FIFO behavior and remove items while traversing.</p> queue, because those will ensure proper FIFO behavior and remove items while traversing.</p>
<div class="admonition-wrapper"> <div class="admonition-wrapper">
<div class="admonition admonition-sidebar"><p class="sidebar-title">API Documentation</p> <div class="admonition admonition-sidebar"><p class="sidebar-title">API Documentation</p>
@ -314,14 +403,23 @@ queue, because those will ensure proper FIFO behavior and remove items while tra
</div> </div>
<div class="section" id="strictstack"> <div class="section" id="strictstack">
<h2>StrictStack</h2> <h2>StrictStack</h2>
<p><em>A type-sensitive, taversable stack (LIFO) of items.</em></p>
<p>Extends <a href="https://www.php.net/splstack">\SplStack</a> with an option to restrict the allowed data types for stack items. <p><em>A type-sensitive, taversable stack (LIFO) of items.</em>
</p>
<p>Extends <a href="https://www.php.net/splstack">\SplStack</a> with an option to restrict the allowed data types for stack items.
The stack can be accessed and traversed like an array, but has only consecutive numerical keys. Traversal follows the The stack can be accessed and traversed like an array, but has only consecutive numerical keys. Traversal follows the
last-in, first-out (LIFO) principle meaning that items are returned in the reversed order they were added to the stack.</p> last-in, first-out (LIFO) principle meaning that items are returned in the reversed order they were added to the stack.</p>
<p>It is recommended to use the <code>StrictStack::stack()</code> and <code>StrictStack::unstack()</code> alias methods when working with a
<p>It is recommended to use the <code>StrictStack::stack()</code>
and <code>StrictStack::unstack()</code>
alias methods when working with a
stack, because those will ensure proper LIFO behavior and remove items while traversing.</p> stack, because those will ensure proper LIFO behavior and remove items while traversing.</p>
</div> </div>
</div> </div>
@ -339,7 +437,7 @@ stack, because those will ensure proper LIFO behavior and remove items while tra
</section> </section>
</section> </section>
</div> </div>
<a href="guides/overview/datastructures.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a> <a href="#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
</main> </main>

View File

@ -169,7 +169,7 @@
<div class="phpdocumentor-column -nine phpdocumentor-content"> <div class="phpdocumentor-column -nine phpdocumentor-content">
<div class="section" id="error-and-exception-handlers"> <div class="section" id="error-and-exception-handlers">
<h1>Error and Exception Handlers</h1> <h1>Error and Exception Handlers</h1>
<div class="admonition-wrapper"> <div class="admonition-wrapper">
<div class="admonition admonition-sidebar"><p class="sidebar-title">API Documentation</p> <div class="admonition admonition-sidebar"><p class="sidebar-title">API Documentation</p>
@ -185,18 +185,35 @@
</div> </div>
<div class="section" id="throwerrorexception"> <div class="section" id="throwerrorexception">
<h2>ThrowErrorException</h2> <h2>ThrowErrorException</h2>
<p><em>Throws internal errors as exceptions.</em></p>
<p>If registered as error handler, this handles an internal PHP error by converting it into an <a href="https://www.php.net/errorexception">\ErrorException</a>. It respects the <a href="https://www.php.net/error_reporting">error_reporting</a> <p><em>Throws internal errors as exceptions.</em>
</p>
<p>If registered as error handler, this handles an internal PHP error by converting it into an <a href="https://www.php.net/errorexception">\ErrorException</a>. It respects the <a href="https://www.php.net/error_reporting">error_reporting</a>
directive by only throwing an exception if the severity of the internal error is the same or higher than the setting.</p> directive by only throwing an exception if the severity of the internal error is the same or higher than the setting.</p>
<blockquote><p>Usage:</p><pre><code class="language-php">set_error_handler(new ThrowErrorException());</code></pre></blockquote>
<blockquote>
<p>Usage:</p>
<pre><code class="language-php">set_error_handler(new ThrowErrorException());</code></pre>
</blockquote>
<div class="phpdocumentor-admonition caution"> <div class="phpdocumentor-admonition caution">
<svg class="phpdocumentor-admonition__icon" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z"></path></svg> <svg class="phpdocumentor-admonition__icon" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z"></path></svg>
<article> <article>
<p>By design user-defined error handlers can&#039;t handle errors of severity <code>E_ERROR</code>, <code>E_PARSE</code>, <code>E_CORE_ERROR</code>,
<code>E_CORE_WARNING</code>, <code>E_COMPILE_ERROR</code>, <code>E_COMPILE_WARNING</code> and most of <code>E_STRICT</code>.</p> <p>By design user-defined error handlers can&#039;t handle errors of severity <code>E_ERROR</code>
, <code>E_PARSE</code>
, <code>E_CORE_ERROR</code>
,
<code>E_CORE_WARNING</code>
, <code>E_COMPILE_ERROR</code>
, <code>E_COMPILE_WARNING</code>
and most of <code>E_STRICT</code>
.</p>
</article> </article>
</div> </div>
@ -216,12 +233,21 @@ directive by only throwing an exception if the severity of the internal error is
</div> </div>
<div class="section" id="triggerexceptionerror"> <div class="section" id="triggerexceptionerror">
<h2>TriggerExceptionError</h2> <h2>TriggerExceptionError</h2>
<p><em>Triggers errors for uncaught exceptions.</em></p>
<p>If registered as exception handler, this catches an uncaught exception and converts it into an internal PHP error of <p><em>Triggers errors for uncaught exceptions.</em>
severity <code>E_USER_ERROR</code>.</p> </p>
<blockquote><p>Usage:</p><pre><code class="language-php">set_exception_handler(new TriggerExceptionError());</code></pre></blockquote>
<p>If registered as exception handler, this catches an uncaught exception and converts it into an internal PHP error of
severity <code>E_USER_ERROR</code>
.</p>
<blockquote>
<p>Usage:</p>
<pre><code class="language-php">set_exception_handler(new TriggerExceptionError());</code></pre>
</blockquote>
</div> </div>
@ -240,7 +266,7 @@ severity <code>E_USER_ERROR</code>.</p>
</section> </section>
</section> </section>
</div> </div>
<a href="guides/overview/errorhandlers.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a> <a href="#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
</main> </main>

View File

@ -169,64 +169,146 @@
<div class="phpdocumentor-column -nine phpdocumentor-content"> <div class="phpdocumentor-column -nine phpdocumentor-content">
<div class="section" id="overview"> <div class="section" id="overview">
<h1>Overview</h1> <h1>Overview</h1>
<p>The package currently contains classes for <a href="guides/overview/datastructures.html">Typed Datastructures</a>
, <a href="guides/overview/errorhandlers.html">Error and Exception Handlers</a> <p>The package currently contains classes for <a href="guides/overview/datastructures.html">Typed Datastructures</a>, <a href="guides/overview/errorhandlers.html">Error and Exception Handlers</a>, multiple <a href="guides/overview/interfaces.html">Interface Traits</a>, and
, multiple <a href="guides/overview/interfaces.html">Interface Traits</a> more generic <a href="guides/overview/traits.html">Traits</a> for common use cases. They share the same design principles like property and method naming
, and
more generic <a href="guides/overview/traits.html">Traits</a>
for common use cases. They share the same design principles like property and method naming
schema, the highest coding standards of <a href="https://phpstan.org/">PHPStan</a> and <a href="https://psalm.dev/">Psalm</a>, and full schema, the highest coding standards of <a href="https://phpstan.org/">PHPStan</a> and <a href="https://psalm.dev/">Psalm</a>, and full
<a href="https://www.php-fig.org/psr/psr-12/">PSR-12</a> compliance to make sure they can be combined and easily re-used in <a href="https://www.php-fig.org/psr/psr-12/">PSR-12</a> compliance to make sure they can be combined and easily used in other
other projects.</p> projects.</p>
<div class="toc"> <div class="toc">
<ul class="phpdocumentor-list"> <ul class="phpdocumentor-list">
<li class="toc-item"><a href="guides/overview/datastructures.html#typed-datastructures">Typed Datastructures</a> <ul class="section-level-1"> <li class="toc-item">
<li class="toc-item"><a href="guides/overview/datastructures.html#strictcollection">StrictCollection</a></li> <a href="guides/overview/datastructures.html#typed-datastructures">Typed Datastructures</a>
<li class="toc-item"><a href="guides/overview/datastructures.html#strictarray">StrictArray</a></li> <ul class="section-level-1">
<li class="toc-item">
<a href="guides/overview/datastructures.html#strictcollection">StrictCollection</a>
<li class="toc-item"><a href="guides/overview/datastructures.html#strictlist">StrictList</a></li>
<li class="toc-item"><a href="guides/overview/datastructures.html#strictqueue">StrictQueue</a></li> </li>
<li class="toc-item"><a href="guides/overview/datastructures.html#strictstack">StrictStack</a></li> <li class="toc-item">
<a href="guides/overview/datastructures.html#strictarray">StrictArray</a>
</ul></li>
<li class="toc-item"><a href="guides/overview/errorhandlers.html#error-and-exception-handlers">Error and Exception Handlers</a> <ul class="section-level-1"> </li>
<li class="toc-item"><a href="guides/overview/errorhandlers.html#throwerrorexception">ThrowErrorException</a></li>
<li class="toc-item"><a href="guides/overview/errorhandlers.html#triggerexceptionerror">TriggerExceptionError</a></li> <li class="toc-item">
<a href="guides/overview/datastructures.html#strictlist">StrictList</a>
</ul></li>
<li class="toc-item"><a href="guides/overview/interfaces.html#interface-traits">Interface Traits</a> <ul class="section-level-1"> </li>
<li class="toc-item"><a href="guides/overview/interfaces.html#arrayaccesstrait">ArrayAccessTrait</a></li>
<li class="toc-item"><a href="guides/overview/interfaces.html#countabletrait">CountableTrait</a></li> <li class="toc-item">
<a href="guides/overview/datastructures.html#strictqueue">StrictQueue</a>
<li class="toc-item"><a href="guides/overview/interfaces.html#iteratoraggregatetrait">IteratorAggregateTrait</a></li>
<li class="toc-item"><a href="guides/overview/interfaces.html#iteratortrait">IteratorTrait</a></li> </li>
</ul></li> <li class="toc-item">
<a href="guides/overview/datastructures.html#strictstack">StrictStack</a>
<li class="toc-item"><a href="guides/overview/traits.html#traits">Traits</a> <ul class="section-level-1">
<li class="toc-item"><a href="guides/overview/traits.html#getter">Getter</a></li>
<li class="toc-item"><a href="guides/overview/traits.html#setter">Setter</a></li> </li>
<li class="toc-item"><a href="guides/overview/traits.html#overloadinggetter">OverloadingGetter</a></li> </ul>
</li>
<li class="toc-item"><a href="guides/overview/traits.html#overloadingsetter">OverloadingSetter</a></li> <li class="toc-item">
<a href="guides/overview/errorhandlers.html#error-and-exception-handlers">Error and Exception Handlers</a>
<li class="toc-item"><a href="guides/overview/traits.html#singleton">Singleton</a></li> <ul class="section-level-1">
<li class="toc-item">
<a href="guides/overview/errorhandlers.html#throwerrorexception">ThrowErrorException</a>
<li class="toc-item"><a href="guides/overview/traits.html#typechecker">TypeChecker</a></li>
</ul></li> </li>
<li class="toc-item">
<a href="guides/overview/errorhandlers.html#triggerexceptionerror">TriggerExceptionError</a>
</li>
</ul>
</li>
<li class="toc-item">
<a href="guides/overview/interfaces.html#interface-traits">Interface Traits</a>
<ul class="section-level-1">
<li class="toc-item">
<a href="guides/overview/interfaces.html#arrayaccesstrait">ArrayAccessTrait</a>
</li>
<li class="toc-item">
<a href="guides/overview/interfaces.html#countabletrait">CountableTrait</a>
</li>
<li class="toc-item">
<a href="guides/overview/interfaces.html#iteratoraggregatetrait">IteratorAggregateTrait</a>
</li>
<li class="toc-item">
<a href="guides/overview/interfaces.html#iteratortrait">IteratorTrait</a>
</li>
</ul>
</li>
<li class="toc-item">
<a href="guides/overview/traits.html#traits">Traits</a>
<ul class="section-level-1">
<li class="toc-item">
<a href="guides/overview/traits.html#getter">Getter</a>
</li>
<li class="toc-item">
<a href="guides/overview/traits.html#setter">Setter</a>
</li>
<li class="toc-item">
<a href="guides/overview/traits.html#overloadinggetter">OverloadingGetter</a>
</li>
<li class="toc-item">
<a href="guides/overview/traits.html#overloadingsetter">OverloadingSetter</a>
</li>
<li class="toc-item">
<a href="guides/overview/traits.html#singleton">Singleton</a>
</li>
<li class="toc-item">
<a href="guides/overview/traits.html#typechecker">TypeChecker</a>
</li>
</ul>
</li>
</ul> </ul>
</div> </div>
@ -246,7 +328,7 @@ other projects.</p>
</section> </section>
</section> </section>
</div> </div>
<a href="guides/overview/index.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a> <a href="#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
</main> </main>

View File

@ -169,24 +169,55 @@
<div class="phpdocumentor-column -nine phpdocumentor-content"> <div class="phpdocumentor-column -nine phpdocumentor-content">
<div class="section" id="interface-traits"> <div class="section" id="interface-traits">
<h1>Interface Traits</h1> <h1>Interface Traits</h1>
<div class="admonition-wrapper"> <div class="admonition-wrapper">
<div class="admonition admonition-sidebar"><p class="sidebar-title">Table of Contents</p> <div class="admonition admonition-sidebar"><p class="sidebar-title">Table of Contents</p>
<div class="contents"><ul class="phpdocumentor-list"><li class="toc-item"><a href="guides/overview/interfaces.html#arrayaccesstrait">ArrayAccessTrait</a></li><li class="toc-item"><a href="guides/overview/interfaces.html#countabletrait">CountableTrait</a></li><li class="toc-item"><a href="guides/overview/interfaces.html#iteratoraggregatetrait">IteratorAggregateTrait</a></li><li class="toc-item"><a href="guides/overview/interfaces.html#iteratortrait">IteratorTrait</a></li></ul></div> <div class="contents">
<ul class="phpdocumentor-list">
<li class="toc-item">
<a href="guides/overview/interfaces.html#arrayaccesstrait">ArrayAccessTrait</a>
</li>
<li class="toc-item">
<a href="guides/overview/interfaces.html#countabletrait">CountableTrait</a>
</li>
<li class="toc-item">
<a href="guides/overview/interfaces.html#iteratoraggregatetrait">IteratorAggregateTrait</a>
</li>
<li class="toc-item">
<a href="guides/overview/interfaces.html#iteratortrait">IteratorTrait</a>
</li>
</ul>
</div>
</div> </div>
</div> </div>
<p>This package contains some traits implementing common interfaces, which can easily be used in any class that internally
<p>This package contains some traits implementing common interfaces, which can easily be used in any class that internally
uses an array for holding its properties or data. They also share the same internal logic to allow combining multiple uses an array for holding its properties or data. They also share the same internal logic to allow combining multiple
traits within the same class.</p> traits within the same class.</p>
<div class="phpdocumentor-admonition note"> <div class="phpdocumentor-admonition note">
<svg class="phpdocumentor-admonition__icon" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M7 8h10M7 12h4m1 8l-4-4H5a2 2 0 01-2-2V6a2 2 0 012-2h14a2 2 0 012 2v8a2 2 0 01-2 2h-3l-4 4z"></path></svg> <svg class="phpdocumentor-admonition__icon" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M7 8h10M7 12h4m1 8l-4-4H5a2 2 0 01-2-2V6a2 2 0 012-2h14a2 2 0 012 2v8a2 2 0 01-2 2h-3l-4 4z"></path></svg>
<article> <article>
<p>Internally all interface traits use the <code>$_data</code> array, the same as some <a href="guides/overview/datastructures.html">Typed Datastructures</a>
and <a href="guides/overview/traits.html">Traits</a> <p>Internally all interface traits use the <code>$_data</code>
of array, the same as some <a href="guides/overview/datastructures.html">Typed Datastructures</a> and <a href="guides/overview/traits.html">Traits</a> of
this package.</p> this package.</p>
</article> </article>
</div> </div>
@ -204,14 +235,22 @@ this package.</p>
</div> </div>
<div class="section" id="arrayaccesstrait"> <div class="section" id="arrayaccesstrait">
<h2>ArrayAccessTrait</h2> <h2>ArrayAccessTrait</h2>
<p><em>A generic implementation of the ArrayAccess interface.</em></p>
<p>The <a href="https://www.php.net/arrayaccess">\ArrayAccess</a> interface allows objects to be accessed like arrays.</p> <p><em>A generic implementation of the ArrayAccess interface.</em>
<blockquote><p>Usage:</p><pre><code class="language-php">class Foo implements ArrayAccess </p>
<p>The <a href="https://www.php.net/arrayaccess">\ArrayAccess</a> interface allows objects to be accessed like arrays.</p>
<blockquote>
<p>Usage:</p>
<pre><code class="language-php">class Foo implements ArrayAccess
{ {
use \OCC\Basics\Interfaces\ArrayAccessTrait; use \OCC\Basics\Interfaces\ArrayAccessTrait;
}</code></pre></blockquote> }</code></pre>
</blockquote>
<div class="admonition-wrapper"> <div class="admonition-wrapper">
<div class="admonition admonition-sidebar"><p class="sidebar-title">API Documentation</p> <div class="admonition admonition-sidebar"><p class="sidebar-title">API Documentation</p>
@ -229,14 +268,22 @@ this package.</p>
</div> </div>
<div class="section" id="countabletrait"> <div class="section" id="countabletrait">
<h2>CountableTrait</h2> <h2>CountableTrait</h2>
<p><em>A generic implementation of the Countable interface.</em></p>
<p>The <a href="https://www.php.net/countable">\Countable</a> interface allows objects to be used with the <a href="https://www.php.net/count">count()</a> function.</p> <p><em>A generic implementation of the Countable interface.</em>
<blockquote><p>Usage:</p><pre><code class="language-php">class Foo implements Countable </p>
<p>The <a href="https://www.php.net/countable">\Countable</a> interface allows objects to be used with the <a href="https://www.php.net/count">count()</a> function.</p>
<blockquote>
<p>Usage:</p>
<pre><code class="language-php">class Foo implements Countable
{ {
use \OCC\Basics\Interfaces\CountableTrait; use \OCC\Basics\Interfaces\CountableTrait;
}</code></pre></blockquote> }</code></pre>
</blockquote>
<div class="admonition-wrapper"> <div class="admonition-wrapper">
<div class="admonition admonition-sidebar"><p class="sidebar-title">API Documentation</p> <div class="admonition admonition-sidebar"><p class="sidebar-title">API Documentation</p>
@ -254,14 +301,22 @@ this package.</p>
</div> </div>
<div class="section" id="iteratoraggregatetrait"> <div class="section" id="iteratoraggregatetrait">
<h2>IteratorAggregateTrait</h2> <h2>IteratorAggregateTrait</h2>
<p><em>A generic implementation of the IteratorAggregate interface.</em></p>
<p>The <a href="https://www.php.net/iteratoraggregate">\IteratorAggregate</a> interface creates an external <a href="https://www.php.net/arrayiterator">\ArrayIterator</a> for traversing the object&#039;s internal data array.</p> <p><em>A generic implementation of the IteratorAggregate interface.</em>
<blockquote><p>Usage:</p><pre><code class="language-php">class Foo implements IteratorAggregate </p>
<p>The <a href="https://www.php.net/iteratoraggregate">\IteratorAggregate</a> interface creates an external <a href="https://www.php.net/arrayiterator">\ArrayIterator</a> for traversing the object&#039;s internal data array.</p>
<blockquote>
<p>Usage:</p>
<pre><code class="language-php">class Foo implements IteratorAggregate
{ {
use \OCC\Basics\Interfaces\IteratorAggregateTrait; use \OCC\Basics\Interfaces\IteratorAggregateTrait;
}</code></pre></blockquote> }</code></pre>
</blockquote>
<div class="admonition-wrapper"> <div class="admonition-wrapper">
<div class="admonition admonition-sidebar"><p class="sidebar-title">API Documentation</p> <div class="admonition admonition-sidebar"><p class="sidebar-title">API Documentation</p>
@ -279,15 +334,23 @@ this package.</p>
</div> </div>
<div class="section" id="iteratortrait"> <div class="section" id="iteratortrait">
<h2>IteratorTrait</h2> <h2>IteratorTrait</h2>
<p><em>A generic implementation of the Iterator interface.</em></p>
<p>The <a href="https://www.php.net/iterator">\Iterator</a> interface creates an internal iterator for traversing the object&#039;s data <p><em>A generic implementation of the Iterator interface.</em>
</p>
<p>The <a href="https://www.php.net/iterator">\Iterator</a> interface creates an internal iterator for traversing the object&#039;s data
array.</p> array.</p>
<blockquote><p>Usage:</p><pre><code class="language-php">class Foo implements Iterator
<blockquote>
<p>Usage:</p>
<pre><code class="language-php">class Foo implements Iterator
{ {
use \OCC\Basics\Interfaces\IteratorTrait; use \OCC\Basics\Interfaces\IteratorTrait;
}</code></pre></blockquote> }</code></pre>
</blockquote>
</div> </div>
@ -306,7 +369,7 @@ array.</p>
</section> </section>
</section> </section>
</div> </div>
<a href="guides/overview/interfaces.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a> <a href="#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
</main> </main>

View File

@ -169,19 +169,59 @@
<div class="phpdocumentor-column -nine phpdocumentor-content"> <div class="phpdocumentor-column -nine phpdocumentor-content">
<div class="section" id="traits"> <div class="section" id="traits">
<h1>Traits</h1> <h1>Traits</h1>
<div class="admonition-wrapper"> <div class="admonition-wrapper">
<div class="admonition admonition-sidebar"><p class="sidebar-title">Table of Contents</p> <div class="admonition admonition-sidebar"><p class="sidebar-title">Table of Contents</p>
<div class="contents"><ul class="phpdocumentor-list"><li class="toc-item"><a href="guides/overview/traits.html#getter">Getter</a></li><li class="toc-item"><a href="guides/overview/traits.html#setter">Setter</a></li><li class="toc-item"><a href="guides/overview/traits.html#overloadinggetter">OverloadingGetter</a></li><li class="toc-item"><a href="guides/overview/traits.html#overloadingsetter">OverloadingSetter</a></li><li class="toc-item"><a href="guides/overview/traits.html#singleton">Singleton</a></li><li class="toc-item"><a href="guides/overview/traits.html#typechecker">TypeChecker</a></li></ul></div> <div class="contents">
<ul class="phpdocumentor-list">
<li class="toc-item">
<a href="guides/overview/traits.html#getter">Getter</a>
</li>
<li class="toc-item">
<a href="guides/overview/traits.html#setter">Setter</a>
</li>
<li class="toc-item">
<a href="guides/overview/traits.html#overloadinggetter">OverloadingGetter</a>
</li>
<li class="toc-item">
<a href="guides/overview/traits.html#overloadingsetter">OverloadingSetter</a>
</li>
<li class="toc-item">
<a href="guides/overview/traits.html#singleton">Singleton</a>
</li>
<li class="toc-item">
<a href="guides/overview/traits.html#typechecker">TypeChecker</a>
</li>
</ul>
</div>
</div> </div>
</div> </div>
<p>This package provides a number of generic traits like different getter and setter methods, an implementation of the
<p>This package provides a number of generic traits like different getter and setter methods, an implementation of the
singleton design pattern and some little helpers. Those traits are too small to justify their own packages and most of them singleton design pattern and some little helpers. Those traits are too small to justify their own packages and most of them
are dependencies of the <a href="guides/overview/datastructures.html">Typed Datastructures</a> are dependencies of the <a href="guides/overview/datastructures.html">Typed Datastructures</a> and <a href="guides/overview/interfaces.html">Interface Traits</a> anyway.</p>
and <a href="guides/overview/interfaces.html">Interface Traits</a>
anyway.</p>
<div class="admonition-wrapper"> <div class="admonition-wrapper">
<div class="admonition admonition-sidebar"><p class="sidebar-title">API Documentation</p> <div class="admonition admonition-sidebar"><p class="sidebar-title">API Documentation</p>
@ -196,16 +236,32 @@ are dependencies of the <a href="guides/overview/datastructures.html">Typed Data
</div> </div>
<div class="section" id="getter"> <div class="section" id="getter">
<h2>Getter</h2> <h2>Getter</h2>
<p><em>Reads data from inaccessible properties by using magic methods.</em></p>
<p>To make a <code>protected</code> or <code>private</code> property readable, provide a method named <code>_magicGet{Property}()</code> which handles the <p><em>Reads data from inaccessible properties by using magic methods.</em>
reading. Replace <code>{Property}</code> in the method&#039;s name with the name of the actual property (with an uppercase first </p>
<p>To make a <code>protected</code>
or <code>private</code>
property readable, provide a method named <code>_magicGet{Property}()</code>
which handles the
reading. Replace <code>{Property}</code>
in the method&#039;s name with the name of the actual property (with an uppercase first
letter).</p> letter).</p>
<p>Trying to access an undefined property or a property without corresponding &quot;magic&quot; getter method will result in an
<a href="https://www.php.net/invalidargumentexception">\InvalidArgumentException</a>.</p>
<blockquote><p>Example: If the property is named <code>$fooBar</code>, the &quot;magic&quot; method has to be <code>_magicGetFooBar()</code>. This method is then <p>Trying to access an undefined property or a property without corresponding &quot;magic&quot; getter method will result in an
called when <code>$fooBar</code> is read in a context where it normally would not be accessible.</p></blockquote> <a href="https://www.php.net/invalidargumentexception">\InvalidArgumentException</a> being thrown.</p>
<blockquote>
<p>Example: If the property is named <code>$fooBar</code>
, the &quot;magic&quot; method has to be <code>_magicGetFooBar()</code>
. This method is then
called when <code>$fooBar</code>
is read in a context where it normally would not be accessible.</p>
</blockquote>
<div class="admonition-wrapper"> <div class="admonition-wrapper">
<div class="admonition admonition-sidebar"><p class="sidebar-title">API Documentation</p> <div class="admonition admonition-sidebar"><p class="sidebar-title">API Documentation</p>
@ -223,16 +279,32 @@ called when <code>$fooBar</code> is read in a context where it normally would no
</div> </div>
<div class="section" id="setter"> <div class="section" id="setter">
<h2>Setter</h2> <h2>Setter</h2>
<p><em>Writes data to inaccessible properties by using magic methods.</em></p>
<p>To make a <code>protected</code> or <code>private</code> property writable, provide a method named <code>_magicSet{Property}()</code> which handles the <p><em>Writes data to inaccessible properties by using magic methods.</em>
writing. Replace <code>{Property}</code> in the method&#039;s name with the name of the actual property (with an uppercase first </p>
<p>To make a <code>protected</code>
or <code>private</code>
property writable, provide a method named <code>_magicSet{Property}()</code>
which handles the
writing. Replace <code>{Property}</code>
in the method&#039;s name with the name of the actual property (with an uppercase first
letter).</p> letter).</p>
<p>Trying to access an undefined property or a property without corresponding &quot;magic&quot; setter method will result in an
<a href="https://www.php.net/invalidargumentexception">\InvalidArgumentException</a>.</p>
<blockquote><p>Example: If the property is named <code>$fooBar</code>, the &quot;magic&quot; method has to be <code>_magicSetFooBar()</code>. This method is then <p>Trying to access an undefined property or a property without corresponding &quot;magic&quot; setter method will result in an
called when <code>$fooBar</code> is written to in a context where it normally would not be accessible.</p></blockquote> <a href="https://www.php.net/invalidargumentexception">\InvalidArgumentException</a> being thrown.</p>
<blockquote>
<p>Example: If the property is named <code>$fooBar</code>
, the &quot;magic&quot; method has to be <code>_magicSetFooBar()</code>
. This method is then
called when <code>$fooBar</code>
is written to in a context where it normally would not be accessible.</p>
</blockquote>
<div class="admonition-wrapper"> <div class="admonition-wrapper">
<div class="admonition admonition-sidebar"><p class="sidebar-title">API Documentation</p> <div class="admonition admonition-sidebar"><p class="sidebar-title">API Documentation</p>
@ -250,20 +322,33 @@ called when <code>$fooBar</code> is written to in a context where it normally wo
</div> </div>
<div class="section" id="overloadinggetter"> <div class="section" id="overloadinggetter">
<h2>OverloadingGetter</h2> <h2>OverloadingGetter</h2>
<p><em>Overloads a class with readable virtual properties.</em></p>
<p>It reads a protected internal array whose keys are interpreted as property names.</p> <p><em>Overloads a class with readable virtual properties.</em>
<p>Trying to access an undefined virtual property will not issue any warning or error, but return <code>NULL</code> instead.</p> </p>
<blockquote><p>Example: Reading <code>Foo-&gt;bar</code> will return the value of <code>Foo::$_data[&#039;bar&#039;]</code>.</p></blockquote>
<p>It reads a protected internal array whose keys are interpreted as property names.</p>
<p>Trying to access an undefined virtual property will not issue any warning or error, but return <code>NULL</code>
instead.</p>
<blockquote>
<p>Example: Reading <code>Foo-&gt;bar</code>
will return the value of <code>Foo::$_data[&#039;bar&#039;]</code>
.</p>
</blockquote>
<div class="phpdocumentor-admonition note"> <div class="phpdocumentor-admonition note">
<svg class="phpdocumentor-admonition__icon" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M7 8h10M7 12h4m1 8l-4-4H5a2 2 0 01-2-2V6a2 2 0 012-2h14a2 2 0 012 2v8a2 2 0 01-2 2h-3l-4 4z"></path></svg> <svg class="phpdocumentor-admonition__icon" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M7 8h10M7 12h4m1 8l-4-4H5a2 2 0 01-2-2V6a2 2 0 012-2h14a2 2 0 012 2v8a2 2 0 01-2 2h-3l-4 4z"></path></svg>
<article> <article>
<p>Internally it uses the <code>$_data</code> array, the same as some <a href="guides/overview/datastructures.html">Typed Datastructures</a>
and all <a href="guides/overview/interfaces.html">Interface Traits</a> <p>Internally it uses the <code>$_data</code>
of this array, the same as some <a href="guides/overview/datastructures.html">Typed Datastructures</a> and all <a href="guides/overview/interfaces.html">Interface Traits</a> of this
package.</p> package.</p>
</article> </article>
</div> </div>
@ -283,20 +368,33 @@ package.</p>
</div> </div>
<div class="section" id="overloadingsetter"> <div class="section" id="overloadingsetter">
<h2>OverloadingSetter</h2> <h2>OverloadingSetter</h2>
<p><em>Overloads a class with writable virtual properties.</em></p>
<p>It writes a protected internal array whose keys are interpreted as property names.</p> <p><em>Overloads a class with writable virtual properties.</em>
<p>Trying to access a previously undefined virtual property will create a new one with the given name.</p> </p>
<blockquote><p>Example: <code>Foo-&gt;bar = 42;</code> will set <code>Foo::$_data[&#039;bar&#039;]</code> to <code>42</code>.</p></blockquote>
<p>It writes a protected internal array whose keys are interpreted as property names.</p>
<p>Trying to access a previously undefined virtual property will create a new one with the given name.</p>
<blockquote>
<p>Example: <code>Foo-&gt;bar = 42;</code>
will set <code>Foo::$_data[&#039;bar&#039;]</code>
to <code>42</code>
.</p>
</blockquote>
<div class="phpdocumentor-admonition note"> <div class="phpdocumentor-admonition note">
<svg class="phpdocumentor-admonition__icon" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M7 8h10M7 12h4m1 8l-4-4H5a2 2 0 01-2-2V6a2 2 0 012-2h14a2 2 0 012 2v8a2 2 0 01-2 2h-3l-4 4z"></path></svg> <svg class="phpdocumentor-admonition__icon" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M7 8h10M7 12h4m1 8l-4-4H5a2 2 0 01-2-2V6a2 2 0 012-2h14a2 2 0 012 2v8a2 2 0 01-2 2h-3l-4 4z"></path></svg>
<article> <article>
<p>Internally it uses the <code>$_data</code> array, the same as some <a href="guides/overview/datastructures.html">Typed Datastructures</a>
and all <a href="guides/overview/interfaces.html">Interface Traits</a> <p>Internally it uses the <code>$_data</code>
of this array, the same as some <a href="guides/overview/datastructures.html">Typed Datastructures</a> and all <a href="guides/overview/interfaces.html">Interface Traits</a> of this
package.</p> package.</p>
</article> </article>
</div> </div>
@ -316,17 +414,27 @@ package.</p>
</div> </div>
<div class="section" id="singleton"> <div class="section" id="singleton">
<h2>Singleton</h2> <h2>Singleton</h2>
<p><em>Allows just a single instance of the class using this trait.</em></p>
<p>Get the singleton by calling the static method <code>getInstance()</code>. If there is no object yet, the constructor is called <p><em>Allows just a single instance of the class using this trait.</em>
with the same arguments as <code>getInstance()</code>. Any later call will just return the already instantiated object </p>
<p>Get the singleton by calling the static method <code>getInstance()</code>
. If there is no object yet, the constructor is called
with the same arguments as <code>getInstance()</code>
. Any later call will just return the already instantiated object
(irrespective of the given arguments).</p> (irrespective of the given arguments).</p>
<div class="phpdocumentor-admonition caution"> <div class="phpdocumentor-admonition caution">
<svg class="phpdocumentor-admonition__icon" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z"></path></svg> <svg class="phpdocumentor-admonition__icon" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z"></path></svg>
<article> <article>
<p>In order for this to work as expected, the constructor has to be implemented as <code>private</code> to prevent direct
<p>In order for this to work as expected, the constructor has to be implemented as <code>private</code>
to prevent direct
instantiation of the class.</p> instantiation of the class.</p>
</article> </article>
</div> </div>
@ -346,13 +454,36 @@ instantiation of the class.</p>
</div> </div>
<div class="section" id="typechecker"> <div class="section" id="typechecker">
<h2>TypeChecker</h2> <h2>TypeChecker</h2>
<p><em>A generic data type checker.</em></p>
<p>This allows to set a list of allowed atomic data types and fully qualified class names. It also provides a method to <p><em>A generic data type checker.</em>
</p>
<p>This allows to set a list of allowed atomic data types and fully qualified class names. It also provides a method to
check if a value&#039;s data type matches at least one of these types.</p> check if a value&#039;s data type matches at least one of these types.</p>
<p>Available atomic types are <code>array</code>, <code>bool</code>, <code>callable</code>, <code>countable</code>, <code>float</code> / <code>double</code>, <code>int</code> / <code>integer</code> / <code>long</code>,
<code>iterable</code>, <code>null</code>, <code>numeric</code>, <code>object</code>, <code>resource</code>, <code>scalar</code> and <code>string</code>.</p>
<p>Available atomic types are <code>array</code>
, <code>bool</code>
, <code>callable</code>
, <code>countable</code>
, <code>float</code>
(or <code>double</code>
), <code>int</code>
(or <code>integer</code>
or
<code>long</code>
), <code>iterable</code>
, <code>null</code>
, <code>numeric</code>
, <code>object</code>
, <code>resource</code>
, <code>scalar</code>
and <code>string</code>
.</p>
</div> </div>
</div> </div>
@ -370,7 +501,7 @@ check if a value&#039;s data type matches at least one of these types.</p>
</section> </section>
</section> </section>
</div> </div>
<a href="guides/overview/traits.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a> <a href="#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
</main> </main>

View File

@ -169,29 +169,59 @@
<div class="phpdocumentor-column -nine phpdocumentor-content"> <div class="phpdocumentor-column -nine phpdocumentor-content">
<div class="section" id="user-guide"> <div class="section" id="user-guide">
<h1>User Guide</h1> <h1>User Guide</h1>
<p>The <em>PHP Basics</em> are a library package, not a stand-alone application. The following documentation of requirements and
<p>The <em>PHP Basics</em>
are a library package, not a stand-alone application. The following documentation of requirements and
installation procedures describes how to make use of the classes and traits within your own application. For a detailed installation procedures describes how to make use of the classes and traits within your own application. For a detailed
description of the package&#039;s contents have a look at the <a href="guides/overview/index.html">Overview</a> description of the package&#039;s contents have a look at the <a href="guides/overview/index.html">Overview</a> page.</p>
page.</p>
<div class="toc"> <div class="toc">
<ul class="phpdocumentor-list"> <ul class="phpdocumentor-list">
<li class="toc-item"><a href="guides/usage/requirements.html#requirements">Requirements</a> <ul class="section-level-1"> <li class="toc-item">
<li class="toc-item"><a href="guides/usage/requirements.html#environment">Environment</a></li> <a href="guides/usage/requirements.html#requirements">Requirements</a>
<li class="toc-item"><a href="guides/usage/requirements.html#dependencies">Dependencies</a></li> <ul class="section-level-1">
<li class="toc-item">
<a href="guides/usage/requirements.html#environment">Environment</a>
</ul></li>
<li class="toc-item"><a href="guides/usage/installation.html#installation">Installation</a> <ul class="section-level-1"> </li>
<li class="toc-item"><a href="guides/usage/installation.html#composer">Composer</a></li>
<li class="toc-item"><a href="guides/usage/installation.html#git">Git</a></li> <li class="toc-item">
<a href="guides/usage/requirements.html#dependencies">Dependencies</a>
<li class="toc-item"><a href="guides/usage/installation.html#download">Download</a></li>
</ul></li> </li>
</ul>
</li>
<li class="toc-item">
<a href="guides/usage/installation.html#installation">Installation</a>
<ul class="section-level-1">
<li class="toc-item">
<a href="guides/usage/installation.html#composer">Composer</a>
</li>
<li class="toc-item">
<a href="guides/usage/installation.html#git">Git</a>
</li>
<li class="toc-item">
<a href="guides/usage/installation.html#download">Download</a>
</li>
</ul>
</li>
</ul> </ul>
</div> </div>
@ -211,7 +241,7 @@ description of the package&#039;s contents have a look at the <a href="guides/ov
</section> </section>
</section> </section>
</div> </div>
<a href="guides/usage/index.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a> <a href="#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
</main> </main>

View File

@ -169,52 +169,91 @@
<div class="phpdocumentor-column -nine phpdocumentor-content"> <div class="phpdocumentor-column -nine phpdocumentor-content">
<div class="section" id="installation"> <div class="section" id="installation">
<h1>Installation</h1> <h1>Installation</h1>
<div class="admonition-wrapper"> <div class="admonition-wrapper">
<div class="admonition admonition-sidebar"><p class="sidebar-title">Table of Contents</p> <div class="admonition admonition-sidebar"><p class="sidebar-title">Table of Contents</p>
<div class="contents"><ul class="phpdocumentor-list"><li class="toc-item"><a href="guides/usage/installation.html#composer">Composer</a></li><li class="toc-item"><a href="guides/usage/installation.html#git">Git</a></li><li class="toc-item"><a href="guides/usage/installation.html#download">Download</a></li></ul></div> <div class="contents">
<ul class="phpdocumentor-list">
<li class="toc-item">
<a href="guides/usage/installation.html#composer">Composer</a>
</li>
<li class="toc-item">
<a href="guides/usage/installation.html#git">Git</a>
</li>
<li class="toc-item">
<a href="guides/usage/installation.html#download">Download</a>
</li>
</ul>
</div>
</div> </div>
</div> </div>
<div class="section" id="composer"> <div class="section" id="composer">
<h2>Composer</h2> <h2>Composer</h2>
<p>The intended and recommended way of re-using this package is via <a href="https://getcomposer.org/">Composer</a>. The following
<p>The intended and recommended way of using this package is via <a href="https://getcomposer.org/">Composer</a>. The following
command will get you the latest version and make it a dependency of your project. It will also register all classes and command will get you the latest version and make it a dependency of your project. It will also register all classes and
traits with the autoloader to make them available inside the application.</p> traits with the autoloader to make them available inside the application.</p>
<pre><code class="language-shell"># This will install the latest stable version suitable for your project <pre><code class="language-shell"># This will install the latest stable version suitable for your project
composer require &quot;opencultureconsulting/basics&quot;</code></pre> composer require &quot;opencultureconsulting/basics&quot;</code></pre>
<p>If you want to use a specific version other than the latest available for your environment, you can do so by appending
<p>If you want to use a specific version other than the latest available for your environment, you can do so by appending
the desired version constraint:</p> the desired version constraint:</p>
<pre><code class="language-shell"># This will install the latest patch level version of 2.0 (i. e. &gt;=2.0.0 &amp;&amp; &lt;2.1.0)
composer require &quot;opencultureconsulting/basics:~2.0&quot;</code></pre> <pre><code class="language-shell"># This will install the latest patch level version of 2.1 (i. e. &gt;=2.1.0 &amp;&amp; &lt;2.2.0)
<p>All available versions as well as further information about <a href="guides/usage/requirements.html">Requirements</a> composer require &quot;opencultureconsulting/basics:~2.1&quot;</code></pre>
and dependencies can be found on
<p>All available versions as well as further information about <a href="guides/usage/requirements.html">Requirements</a> and dependencies can be found on
<a href="https://packagist.org/packages/opencultureconsulting/basics">Packagist</a>.</p> <a href="https://packagist.org/packages/opencultureconsulting/basics">Packagist</a>.</p>
</div> </div>
<div class="section" id="git"> <div class="section" id="git">
<h2>Git</h2> <h2>Git</h2>
<p>Alternatively, you can fetch the files from <a href="https://github.com/opencultureconsulting/php-basics">GitHub</a> and add
<p>Alternatively, you can fetch the files from <a href="https://github.com/opencultureconsulting/php-basics">GitHub</a> and add
them to your project manually. The best way is by cloning the repository, because then you can easily update to a newer them to your project manually. The best way is by cloning the repository, because then you can easily update to a newer
version by just pulling the changes and checking out a different version tag.</p> version by just pulling the changes and checking out a different version tag.</p>
<pre><code class="language-shell"># This will clone the repository into the &quot;basics&quot; directory <pre><code class="language-shell"># This will clone the repository into the &quot;basics&quot; directory
git clone https://github.com/opencultureconsulting/php-basics.git basics</code></pre> git clone https://github.com/opencultureconsulting/php-basics.git basics</code></pre>
<p>If you want to use a specific version other than the latest development state, you have to specify the desired tag as
<p>If you want to use a specific version other than the latest development state, you have to specify the desired tag as
well:</p> well:</p>
<pre><code class="language-shell"># This will clone the repository state at version &quot;2.0.0&quot; into the &quot;basics&quot; directory
git clone --branch=v2.0.0 https://github.com/opencultureconsulting/php-basics.git basics</code></pre> <pre><code class="language-shell"># This will clone the repository state at version &quot;2.1.1&quot; into the &quot;basics&quot; directory
<p>Be aware that you also need to make the classes and traits available in your application by either adding them to your git clone --branch=v2.1.1 https://github.com/opencultureconsulting/php-basics.git basics</code></pre>
<p>Be aware that you also need to make the classes and traits available in your application by either adding them to your
autoloader or by including all files individually in PHP.</p> autoloader or by including all files individually in PHP.</p>
</div> </div>
<div class="section" id="download"> <div class="section" id="download">
<h2>Download</h2> <h2>Download</h2>
<p>As a last resort you can also just download the files. You can find all available versions as well as the current
<p>As a last resort you can also just download the files. You can find all available versions as well as the current
development state on the <a href="https://github.com/opencultureconsulting/php-basics/releases">GitHub release page</a>.</p> development state on the <a href="https://github.com/opencultureconsulting/php-basics/releases">GitHub release page</a>.</p>
</div> </div>
</div> </div>
@ -232,7 +271,7 @@ development state on the <a href="https://github.com/opencultureconsulting/php-b
</section> </section>
</section> </section>
</div> </div>
<a href="guides/usage/installation.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a> <a href="#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
</main> </main>

View File

@ -169,21 +169,28 @@
<div class="phpdocumentor-column -nine phpdocumentor-content"> <div class="phpdocumentor-column -nine phpdocumentor-content">
<div class="section" id="requirements"> <div class="section" id="requirements">
<h1>Requirements</h1> <h1>Requirements</h1>
<div class="section" id="environment"> <div class="section" id="environment">
<h2>Environment</h2> <h2>Environment</h2>
<p>This package requires at least <strong>PHP 8.1</strong>
.</p>
<p>It is highly recommended to use <a href="https://getcomposer.org/">Composer</a> for dependency management and autoloading,
although it is technically not strictly required for using any of these classes and traits. But it certainly makes it a
lot easier!</p>
<p>This package requires at least <strong>PHP 8.1</strong>.</p>
<p>It is highly recommended to use <a href="https://getcomposer.org/">Composer</a> for dependency management and autoloading,
although it is technically not strictly required for re-using any of these classes and traits. But it certainly
makes it a lot easier!</p>
</div> </div>
<div class="section" id="dependencies"> <div class="section" id="dependencies">
<h2>Dependencies</h2> <h2>Dependencies</h2>
<p>This package does not have any external dependencies.</p>
<p>This package does not have any external dependencies.</p>
</div> </div>
</div> </div>
@ -201,7 +208,7 @@ makes it a lot easier!</p>
</section> </section>
</section> </section>
</div> </div>
<a href="guides/usage/requirements.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a> <a href="#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
</main> </main>

View File

@ -6,7 +6,7 @@
errorLevel="1" errorLevel="1"
resolveFromConfigFile="true" resolveFromConfigFile="true"
findUnusedBaselineEntry="true" findUnusedBaselineEntry="true"
findUnusedCode="true" findUnusedCode="false"
findUnusedVariablesAndParams="true" findUnusedVariablesAndParams="true"
> >
<issueHandlers> <issueHandlers>