icecave/traitor

This package is abandoned and no longer maintained. No replacement package was suggested.

Compose new classes using interfaces and traits at runtime.

1.0.0 2014-09-09 09:18 UTC

This package is not auto-updated.

Last update: 2020-01-20 03:53:11 UTC


README

Build Status Test Coverage SemVer

Traitor is a PHP library for dynamically generating classes that implement certain interfaces by use of traits. The primary purpose is for creating test mocks.

Example

The example below creates an instance of an object that implements the SomeInterface interface by using the SomeTrait trait. It is passed the values 1, 2, and 3 as constructor parameters.

use Icecave\Traitor\Traitor;

$instance = Traitor::create()
    ->implements_(SomeInterface::CLASS)
    ->use_(SomeTrait::CLASS)
    ->instance(1, 2, 3);

Contact us