schwern/Mite — Issue #5: Implement roles
Author: schwern
Created: 2011-12-09 18:28:26+00:00
State: open
Labels: Feature

Implement roles.

* A class must be allowed to have multiple roles
* A class should respond correctly to DOES
* A class must not have to know about Mite to use a role
* Role creation and composition must be fast

The following are totally optional and can be cut to support the above.

* A role should be able to define required methods
* A role should check for conflicts with other roles
* Role methods should be able to be aliased
* Classes should be able to override role methods (whether done with SUPER or something else)

mixin, Role::Basic and Role::Tiny are good to steal from.