diff --git a/.phpdoc/guide/changelog.rst b/.phpdoc/guide/changelog.rst new file mode 100644 index 0000000..3ddcfa8 --- /dev/null +++ b/.phpdoc/guide/changelog.rst @@ -0,0 +1,74 @@ +.. title:: Changelog + +Changelog +######### + +* :ref:`v2-0-0` +* :ref:`v1-1-0` +* :ref:`v1-0-1` +* :ref:`v1-0-0` + +.. _v2-0-0: + +v2.0.0 +====== + +**Breaking Changes:** + +* Raised minimum PHP version from 8.0 to 8.1 +* Renamed traits for :php:namespace:`OCC\Basics\Interfaces` and moved to different namespace +* Renamed internal methods for :php:trait:`OCC\Basics\Traits\Getter` and :php:trait:`OCC\Basics\Traits\Setter` to avoid + confusion with regular class method + + .. code-block:: php + // old methods + protected function magicGet{PascalCasePropertyName}(): mixed + protected function magicSet{PascalCasePropertyName}(mixed $value): void + + .. code-block:: php + // new methods + protected function _magicGet{PascalCasePropertyName}(): mixed + protected function _magicSet{PascalCasePropertyName}(mixed $value): void + +**New Features:** + +* Added new datastructure :php:class:`OCC\Basics\DataStructures\StrictCollection` +* Added new error handler :php:class:`OCC\Basics\ErrorHandlers\TriggerExceptionError` +* Added new trait :php:trait:`OCC\Basics\Traits\OverloadingGetter` +* Added new trait :php:trait:`OCC\Basics\Traits\OverloadingSetter` +* Extended API for all datastructures +* Extended `documentation `_ + +.. _v1-1-0: + +v1.1.0 +====== + +**Breaking Changes:** + +* Changed the constructor's signature for all :php:namespace:`OCC\Basics\DataStructures` to improve compatibility with + the corresponding `SPL datastructures `_ + + .. code-block:: php + // old constructor signature + public function __construct(iterable $items = [], array $allowedTypes = []) + + .. code-block:: php + // new constructor signature + public function __construct(array $allowedTypes = []) + +.. _v1-0-1: + +v1.0.1 +====== + +**New Features:** + +* Improved exception handling in :php:trait:`Singleton ` trait + +.. _v1-0-0: + +v1.0.0 +====== + +**Initial Release** diff --git a/.phpdoc/guide/changelog/index.rst b/.phpdoc/guide/changelog/index.rst deleted file mode 100644 index e78d19f..0000000 --- a/.phpdoc/guide/changelog/index.rst +++ /dev/null @@ -1,9 +0,0 @@ -Changelog -######### - -.. toctree:: - :maxdepth: 3 - - v1.0.0 - v1.0.1 - v1.1.0 diff --git a/.phpdoc/guide/changelog/v1.0.0.rst b/.phpdoc/guide/changelog/v1.0.0.rst deleted file mode 100644 index e69de29..0000000 diff --git a/.phpdoc/guide/changelog/v1.0.1.rst b/.phpdoc/guide/changelog/v1.0.1.rst deleted file mode 100644 index e69de29..0000000 diff --git a/.phpdoc/guide/changelog/v1.1.0.rst b/.phpdoc/guide/changelog/v1.1.0.rst deleted file mode 100644 index e69de29..0000000 diff --git a/.phpdoc/guide/index.rst b/.phpdoc/guide/index.rst index 2443b1b..e3f6b33 100644 --- a/.phpdoc/guide/index.rst +++ b/.phpdoc/guide/index.rst @@ -1,3 +1,5 @@ +.. title:: PHP Basics + Documentation ############# @@ -8,5 +10,6 @@ Documentation :hidden: :titlesonly: - installation/index - changelog/index + overview/index + usage/index + changelog diff --git a/.phpdoc/guide/installation/index.rst b/.phpdoc/guide/installation/index.rst deleted file mode 100644 index c514700..0000000 --- a/.phpdoc/guide/installation/index.rst +++ /dev/null @@ -1,7 +0,0 @@ -Installation -############ - -.. toctree:: - :maxdepth: 3 - - test diff --git a/.phpdoc/guide/installation/test.rst b/.phpdoc/guide/installation/test.rst deleted file mode 100644 index e217a02..0000000 --- a/.phpdoc/guide/installation/test.rst +++ /dev/null @@ -1,14 +0,0 @@ -Test -#### - -Heading 1 -========= - -Heading 2 ---------- - -Heading 3 -^^^^^^^^^ - -Heading 4 -""""""""" diff --git a/.phpdoc/guide/overview/index.rst b/.phpdoc/guide/overview/index.rst new file mode 100644 index 0000000..abf0d2b --- /dev/null +++ b/.phpdoc/guide/overview/index.rst @@ -0,0 +1,4 @@ +.. title:: Overview + +Overview +######## diff --git a/.phpdoc/guide/usage/index.rst b/.phpdoc/guide/usage/index.rst new file mode 100644 index 0000000..1ce6e10 --- /dev/null +++ b/.phpdoc/guide/usage/index.rst @@ -0,0 +1,10 @@ +.. title:: User Guide + +User Guide +########## + +.. toctree:: + :maxdepth: 2 + + requirements + installation diff --git a/.phpdoc/guide/usage/installation.rst b/.phpdoc/guide/usage/installation.rst new file mode 100644 index 0000000..c0dcfbd --- /dev/null +++ b/.phpdoc/guide/usage/installation.rst @@ -0,0 +1,8 @@ +.. title:: Installation + +Installation +############ + +.. code-block:: shell + + composer require opencultureconsulting/basics diff --git a/.phpdoc/guide/usage/requirements.rst b/.phpdoc/guide/usage/requirements.rst new file mode 100644 index 0000000..5f8a60d --- /dev/null +++ b/.phpdoc/guide/usage/requirements.rst @@ -0,0 +1,7 @@ +.. title:: Requirements + +Requirements +############ + +PHP 8.1 +Composer 2 diff --git a/.phpdoc/template/components/sidebar.html.twig b/.phpdoc/template/components/sidebar.html.twig index 80488dd..46192c9 100644 --- a/.phpdoc/template/components/sidebar.html.twig +++ b/.phpdoc/template/components/sidebar.html.twig @@ -24,8 +24,8 @@

Markers

-
-

Index

+
+

Indices

Files

diff --git a/.phpdoc/template/css/custom.css.twig b/.phpdoc/template/css/custom.css.twig index 376befb..5dc7e98 100644 --- a/.phpdoc/template/css/custom.css.twig +++ b/.phpdoc/template/css/custom.css.twig @@ -29,7 +29,7 @@ aside.phpdocumentor-sidebar } aside.phpdocumentor-sidebar - section.-index + section.-indices { order: 5; } diff --git a/doc/classes/OCC-Basics-DataStructures-StrictCollection.html b/doc/classes/OCC-Basics-DataStructures-StrictCollection.html index 276b8d0..b4dbb74 100644 --- a/doc/classes/OCC-Basics-DataStructures-StrictCollection.html +++ b/doc/classes/OCC-Basics-DataStructures-StrictCollection.html @@ -71,24 +71,32 @@ Menu @@ -1846,6 +1854,17 @@ from 0.

Search results

+ +
diff --git a/doc/classes/OCC-Basics-DataStructures-StrictList.html b/doc/classes/OCC-Basics-DataStructures-StrictList.html index 5972930..1d66cd2 100644 --- a/doc/classes/OCC-Basics-DataStructures-StrictList.html +++ b/doc/classes/OCC-Basics-DataStructures-StrictList.html @@ -71,24 +71,32 @@ Menu @@ -2775,6 +2783,17 @@ Possible values are:

Search results

+ +
diff --git a/doc/classes/OCC-Basics-DataStructures-StrictQueue.html b/doc/classes/OCC-Basics-DataStructures-StrictQueue.html index 5ebf876..6f8b4b9 100644 --- a/doc/classes/OCC-Basics-DataStructures-StrictQueue.html +++ b/doc/classes/OCC-Basics-DataStructures-StrictQueue.html @@ -71,24 +71,32 @@ Menu @@ -2906,6 +2914,17 @@ Possible values are:

Search results

+ +
diff --git a/doc/classes/OCC-Basics-DataStructures-StrictStack.html b/doc/classes/OCC-Basics-DataStructures-StrictStack.html index 2726dac..4763121 100644 --- a/doc/classes/OCC-Basics-DataStructures-StrictStack.html +++ b/doc/classes/OCC-Basics-DataStructures-StrictStack.html @@ -71,24 +71,32 @@ Menu @@ -2906,6 +2914,17 @@ Possible values are:

Search results

+ +
diff --git a/doc/classes/OCC-Basics-ErrorHandlers-ThrowErrorException.html b/doc/classes/OCC-Basics-ErrorHandlers-ThrowErrorException.html index 9fdc1f6..8c46aaf 100644 --- a/doc/classes/OCC-Basics-ErrorHandlers-ThrowErrorException.html +++ b/doc/classes/OCC-Basics-ErrorHandlers-ThrowErrorException.html @@ -71,24 +71,32 @@ Menu @@ -471,6 +479,17 @@

Search results

+ +
diff --git a/doc/classes/OCC-Basics-ErrorHandlers-TriggerExceptionError.html b/doc/classes/OCC-Basics-ErrorHandlers-TriggerExceptionError.html index 1c52227..069a382 100644 --- a/doc/classes/OCC-Basics-ErrorHandlers-TriggerExceptionError.html +++ b/doc/classes/OCC-Basics-ErrorHandlers-TriggerExceptionError.html @@ -71,24 +71,32 @@ Menu @@ -419,6 +427,17 @@ converts it into an internal PHP error of severity E_U

Search results

+ +
diff --git a/doc/classes/OCC-Basics-Interfaces-ArrayAccessTrait.html b/doc/classes/OCC-Basics-Interfaces-ArrayAccessTrait.html index 699b208..27b9d54 100644 --- a/doc/classes/OCC-Basics-Interfaces-ArrayAccessTrait.html +++ b/doc/classes/OCC-Basics-Interfaces-ArrayAccessTrait.html @@ -71,24 +71,32 @@ Menu @@ -598,6 +606,17 @@

Search results

+ +
diff --git a/doc/classes/OCC-Basics-Interfaces-CountableTrait.html b/doc/classes/OCC-Basics-Interfaces-CountableTrait.html index 75d0732..27962ca 100644 --- a/doc/classes/OCC-Basics-Interfaces-CountableTrait.html +++ b/doc/classes/OCC-Basics-Interfaces-CountableTrait.html @@ -71,24 +71,32 @@ Menu @@ -404,6 +412,17 @@

Search results

+ +
diff --git a/doc/classes/OCC-Basics-Interfaces-IteratorAggregateTrait.html b/doc/classes/OCC-Basics-Interfaces-IteratorAggregateTrait.html index 9e44e78..8fa24fb 100644 --- a/doc/classes/OCC-Basics-Interfaces-IteratorAggregateTrait.html +++ b/doc/classes/OCC-Basics-Interfaces-IteratorAggregateTrait.html @@ -71,24 +71,32 @@ Menu @@ -404,6 +412,17 @@

Search results

+ +
diff --git a/doc/classes/OCC-Basics-Interfaces-IteratorTrait.html b/doc/classes/OCC-Basics-Interfaces-IteratorTrait.html index 814ba1b..571b15e 100644 --- a/doc/classes/OCC-Basics-Interfaces-IteratorTrait.html +++ b/doc/classes/OCC-Basics-Interfaces-IteratorTrait.html @@ -71,24 +71,32 @@ Menu @@ -635,6 +643,17 @@

Search results

+ +
diff --git a/doc/classes/OCC-Basics-Traits-Getter.html b/doc/classes/OCC-Basics-Traits-Getter.html index 5bd1889..253331d 100644 --- a/doc/classes/OCC-Basics-Traits-Getter.html +++ b/doc/classes/OCC-Basics-Traits-Getter.html @@ -71,24 +71,32 @@ Menu @@ -491,6 +499,17 @@ a context where it normally would not be accessible.

Search results

+ +
diff --git a/doc/classes/OCC-Basics-Traits-OverloadingGetter.html b/doc/classes/OCC-Basics-Traits-OverloadingGetter.html index 8cfb420..8c4d2f7 100644 --- a/doc/classes/OCC-Basics-Traits-OverloadingGetter.html +++ b/doc/classes/OCC-Basics-Traits-OverloadingGetter.html @@ -71,24 +71,32 @@ Menu @@ -470,6 +478,17 @@ as property names.

Search results

+ +
diff --git a/doc/classes/OCC-Basics-Traits-OverloadingSetter.html b/doc/classes/OCC-Basics-Traits-OverloadingSetter.html index 99806fa..f287002 100644 --- a/doc/classes/OCC-Basics-Traits-OverloadingSetter.html +++ b/doc/classes/OCC-Basics-Traits-OverloadingSetter.html @@ -71,24 +71,32 @@ Menu @@ -463,6 +471,17 @@ as property names.

Search results

+ +
diff --git a/doc/classes/OCC-Basics-Traits-Setter.html b/doc/classes/OCC-Basics-Traits-Setter.html index 87a7157..c5f6c60 100644 --- a/doc/classes/OCC-Basics-Traits-Setter.html +++ b/doc/classes/OCC-Basics-Traits-Setter.html @@ -71,24 +71,32 @@ Menu @@ -484,6 +492,17 @@ to in a context where it normally would not be accessible.

Search results

+ +
diff --git a/doc/classes/OCC-Basics-Traits-Singleton.html b/doc/classes/OCC-Basics-Traits-Singleton.html index 9b93e10..ffe7c8a 100644 --- a/doc/classes/OCC-Basics-Traits-Singleton.html +++ b/doc/classes/OCC-Basics-Traits-Singleton.html @@ -71,24 +71,32 @@ Menu @@ -528,6 +536,17 @@ as private to prevent direct instantiation of t

Search results

+ +
diff --git a/doc/css/template.css b/doc/css/template.css index 99dc18d..e0db992 100644 --- a/doc/css/template.css +++ b/doc/css/template.css @@ -270,9 +270,45 @@ margin-right: var(--spacing-sm); } aside.phpdocumentor-sidebar - h2.phpdocumentor-sidebar__category-header { - text-transform: capitalize; + display: flex; + flex-direction: column; +} + +aside.phpdocumentor-sidebar + section.-documentation +{ + order: 1; +} + +aside.phpdocumentor-sidebar + section.-packages +{ + order: 2; +} + +aside.phpdocumentor-sidebar + section.-namespaces +{ + order: 3; +} + +aside.phpdocumentor-sidebar + section.-reports +{ + order: 4; +} + +aside.phpdocumentor-sidebar + section.-index +{ + order: 5; +} + +aside.phpdocumentor-sidebar + ul.phpdocumentor-list +{ + padding: 0 var(--spacing-md) !important; } code.prettyprint @@ -285,6 +321,22 @@ code.prettyprint padding: var(--spacing-xxxs); } +div.phpdocumentor-content + div.section + ul +{ + padding-left: var(--spacing-lg); +} + +div.phpdocumentor-content + div.section + ul + li +{ + padding-bottom: 0; +} + + dl.phpdocumentor-table-of-contents dt.phpdocumentor-table-of-contents__entry.-documentation:before { diff --git a/doc/files/src-datastructures-strictcollection.html b/doc/files/src-datastructures-strictcollection.html index 4115081..c25c737 100644 --- a/doc/files/src-datastructures-strictcollection.html +++ b/doc/files/src-datastructures-strictcollection.html @@ -71,24 +71,32 @@ Menu @@ -313,6 +321,17 @@ along with this program. If not, see http

Search results

+ +
diff --git a/doc/files/src-datastructures-strictlist.html b/doc/files/src-datastructures-strictlist.html index f4afa4e..3fcfa78 100644 --- a/doc/files/src-datastructures-strictlist.html +++ b/doc/files/src-datastructures-strictlist.html @@ -71,24 +71,32 @@ Menu @@ -313,6 +321,17 @@ along with this program. If not, see http

Search results

+ +
diff --git a/doc/files/src-datastructures-strictqueue.html b/doc/files/src-datastructures-strictqueue.html index 5cca348..cfb48da 100644 --- a/doc/files/src-datastructures-strictqueue.html +++ b/doc/files/src-datastructures-strictqueue.html @@ -71,24 +71,32 @@ Menu @@ -313,6 +321,17 @@ along with this program. If not, see http

Search results

+ +
diff --git a/doc/files/src-datastructures-strictstack.html b/doc/files/src-datastructures-strictstack.html index c680468..d1efd44 100644 --- a/doc/files/src-datastructures-strictstack.html +++ b/doc/files/src-datastructures-strictstack.html @@ -71,24 +71,32 @@ Menu @@ -313,6 +321,17 @@ along with this program. If not, see http

Search results

+ +
diff --git a/doc/files/src-errorhandlers-throwerrorexception.html b/doc/files/src-errorhandlers-throwerrorexception.html index 082cdb3..37e25ff 100644 --- a/doc/files/src-errorhandlers-throwerrorexception.html +++ b/doc/files/src-errorhandlers-throwerrorexception.html @@ -71,24 +71,32 @@ Menu @@ -313,6 +321,17 @@ along with this program. If not, see http

Search results

+ +
diff --git a/doc/files/src-errorhandlers-triggerexceptionerror.html b/doc/files/src-errorhandlers-triggerexceptionerror.html index 9e7e6b9..827d923 100644 --- a/doc/files/src-errorhandlers-triggerexceptionerror.html +++ b/doc/files/src-errorhandlers-triggerexceptionerror.html @@ -71,24 +71,32 @@ Menu @@ -313,6 +321,17 @@ along with this program. If not, see http

Search results

+ +
diff --git a/doc/files/src-interfaces-arrayaccesstrait.html b/doc/files/src-interfaces-arrayaccesstrait.html index d904925..53150b2 100644 --- a/doc/files/src-interfaces-arrayaccesstrait.html +++ b/doc/files/src-interfaces-arrayaccesstrait.html @@ -71,24 +71,32 @@ Menu @@ -313,6 +321,17 @@ along with this program. If not, see http

Search results

+ +
diff --git a/doc/files/src-interfaces-countabletrait.html b/doc/files/src-interfaces-countabletrait.html index 099b673..681ee02 100644 --- a/doc/files/src-interfaces-countabletrait.html +++ b/doc/files/src-interfaces-countabletrait.html @@ -71,24 +71,32 @@ Menu @@ -313,6 +321,17 @@ along with this program. If not, see http

Search results

+ +
diff --git a/doc/files/src-interfaces-iteratoraggregatetrait.html b/doc/files/src-interfaces-iteratoraggregatetrait.html index 507c706..67fefc7 100644 --- a/doc/files/src-interfaces-iteratoraggregatetrait.html +++ b/doc/files/src-interfaces-iteratoraggregatetrait.html @@ -71,24 +71,32 @@ Menu @@ -313,6 +321,17 @@ along with this program. If not, see http

Search results

+ +
diff --git a/doc/files/src-interfaces-iteratortrait.html b/doc/files/src-interfaces-iteratortrait.html index cc5da28..b834138 100644 --- a/doc/files/src-interfaces-iteratortrait.html +++ b/doc/files/src-interfaces-iteratortrait.html @@ -71,24 +71,32 @@ Menu @@ -313,6 +321,17 @@ along with this program. If not, see http

Search results

+ +
diff --git a/doc/files/src-traits-getter.html b/doc/files/src-traits-getter.html index b26acdb..a345201 100644 --- a/doc/files/src-traits-getter.html +++ b/doc/files/src-traits-getter.html @@ -71,24 +71,32 @@ Menu @@ -313,6 +321,17 @@ along with this program. If not, see http

Search results

+ +
diff --git a/doc/files/src-traits-overloadinggetter.html b/doc/files/src-traits-overloadinggetter.html index ef983e9..603e539 100644 --- a/doc/files/src-traits-overloadinggetter.html +++ b/doc/files/src-traits-overloadinggetter.html @@ -71,24 +71,32 @@ Menu @@ -313,6 +321,17 @@ along with this program. If not, see http

Search results

+ +
diff --git a/doc/files/src-traits-overloadingsetter.html b/doc/files/src-traits-overloadingsetter.html index 6c2bd89..2f9f222 100644 --- a/doc/files/src-traits-overloadingsetter.html +++ b/doc/files/src-traits-overloadingsetter.html @@ -71,24 +71,32 @@ Menu @@ -313,6 +321,17 @@ along with this program. If not, see http

Search results

+ +
diff --git a/doc/files/src-traits-setter.html b/doc/files/src-traits-setter.html index d0ebd7f..4e3fffe 100644 --- a/doc/files/src-traits-setter.html +++ b/doc/files/src-traits-setter.html @@ -71,24 +71,32 @@ Menu @@ -313,6 +321,17 @@ along with this program. If not, see http

Search results

+ +
diff --git a/doc/files/src-traits-singleton.html b/doc/files/src-traits-singleton.html index 262f701..4d0e07f 100644 --- a/doc/files/src-traits-singleton.html +++ b/doc/files/src-traits-singleton.html @@ -71,24 +71,32 @@ Menu @@ -313,6 +321,17 @@ along with this program. If not, see http

Search results

+ +
diff --git a/doc/graphs/classes.html b/doc/graphs/classes.html index 21ca595..6d58ee9 100644 --- a/doc/graphs/classes.html +++ b/doc/graphs/classes.html @@ -59,24 +59,32 @@ Menu @@ -145,6 +153,17 @@

Search results

+ +
diff --git a/doc/guides/changelog.html b/doc/guides/changelog.html new file mode 100644 index 0000000..02282b8 --- /dev/null +++ b/doc/guides/changelog.html @@ -0,0 +1,299 @@ + + + + + PHP Basics + + + + + + + + + + + + + + + + + + + + + + +
+

PHP Basics

+ + + + + + +
+ +
+
+ + + + +
+
+

Changelog

+ + + + + +
+

v2.0.0

+ + +

Breaking Changes:

+ + +
    +
  • Raised minimum PHP version from 8.0 to 8.1
  • + +
  • Renamed traits for Interfaces + and moved to different namespace
  • + +
  • Renamed internal methods for Getter + and Setter + to avoid +confusion with regular class method

    // old methods
    +protected function magicGet{PascalCasePropertyName}(): mixed
    +protected function magicSet{PascalCasePropertyName}(mixed $value): void
    // new methods
    +protected function _magicGet{PascalCasePropertyName}(): mixed
    +protected function _magicSet{PascalCasePropertyName}(mixed $value): void
  • + +
+ +

New Features:

+ + + + +
+ +
+

v1.1.0

+ + +

Breaking Changes:

+ + +
    +
  • Changed the constructor's signature for all DataStructures + to improve compatibility with +the corresponding SPL datastructures

    // old constructor signature
    +public function __construct(iterable $items = [], array $allowedTypes = [])
    // new constructor signature
    +public function __construct(array $allowedTypes = [])
  • + +
+ +
+ +
+

v1.0.1

+ + +

New Features:

+ + +
    +
  • Improved exception handling in Singleton + trait
  • + +
+ +
+ +
+

v1.0.0

+ + +

Initial Release

+
+ +
+ +
+
+
+
+

Search results

+ + + +
+
+
    +
    +
    +
    +
    + + +
    + + + + + + + + diff --git a/doc/guides/changelog/index.html b/doc/guides/changelog/index.html index 3237d03..ac12682 100644 --- a/doc/guides/changelog/index.html +++ b/doc/guides/changelog/index.html @@ -72,8 +72,8 @@ Menu