Вступ

Componere (латинська, англійська: compose) призначений для виробничих оточень і надає API для складання класів, мавпових патчів та приведення.

Структура:

Componere\Definition використовується визначення (або перевизначення) класу під час виконання; Потім клас може бути зареєстрований і у разі перевизначення він замінює вихідний клас доти, доки існує Componere\Definition

publicComponere\Definition::__construct(string$name) .

publicComponere\Definition::__construct(string$name, string$parent) .

publicComponere\Definition::__construct(string$name, array$interfaces) .

publicComponere\Definition::__construct(string$name, string$parent, array$interfaces) .

Патчінг:

Componere\Patch використовується зміни класу конкретного екземпляра об'єкта під час виконання; Після застосування виправлення буде застосовуватися доти, доки існує Componere\Patch і його можна скасувати.

publicComponere\Patch::__construct(object$instance) .

publicComponere\Patch::__construct(object$instance, array$interfaces) .

Приведення:

*Componere\* функції приведення можуть наводити серед певних сумісних типів користувачів; У разі сумісності означає, що Type є підлеглим або супер типом object

Componere\cast(Type $type,  $object): Type
Componere\cast_by_ref(Type $type,  $object): Type