Introducción

Componere (latin, English: compose) se dirige a los entornos de producción y proporciona una API para composición de las clases, parches y moldeado.

Composición:

Componere\Definition se utiliza para definir (o redefinir) una clase en tiempo de ejecución; La clase puede entonces registrarse, y en caso de redefinición reemplaza a la clase original durante todo el tiempo que la clase Componere\Definition exista.

public Componere\Definition::__construct ( string $name )
public Componere\Definition::__construct ( string $name , string $parent )
public Componere\Definition::__construct ( string $name , array $interfaces )
public Componere\Definition::__construct ( string $name , string $parent , array $interfaces )

Parcheado:

Componere\Patch se utiliza para cambiar la clase de una instancia específica de un objeto en tiempo de ejecución; Tras su aplicación, el parche permanecerá aplicado durante todo el tiempo que la clase Componere\Patch exista, y puede ser revertido explícitamente.

public Componere\Patch::__construct ( object $instance )
public Componere\Patch::__construct ( object $instance , array $interfaces )

Moldeado:

Componere\ Las funciones de moldeado pueden moldear entre tipos compatibles definidos por el usuario; Donde compatible significa Type es sub o super al tipo de object.

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