role Metamodel::RoleContainer {}
Warning: this role is part of the Rakudo implementation, and is not a part of the language specification.
Implements the ability to hold roles to be held for composition.
roughly corresponds to
class A {
BEGIN A.^add_role(SomeRole);
}
method add_role($obj, Mu $role)
Adds the $role
to the list of roles to be composed.
method roles_to_compose($obj --> List:D)
returns a list of roles added with add_role
, which are to be composed at type composition time.