Comment utiliser MooseX :: ClassAttribute dans un rôle?
Question
je voudrais utiliser MooseX :: ClassAttribute dans un rôle. C'est-à-dire faire quelque chose comme
package Cachable;
use Moose::Role;
use MooseX::ClassAttribute;
class_has Cache => ( is => 'rw' );
1;
Malheureusement, le code ci-dessus ne fonctionne pas comme
la magie profonde de MooseX :: ClassAttribute s'attend
être appelé à partir d'un objet Moose, et non d'un Moose :: Role.
Existe-t-il un moyen de contourner ce problème ou s'agit-il d'une limitation connue?
La solution
Vous m'envoyez un patch qui rend ce travail efficace. C'est certainement faisable, même si les composants internes de Moose rendent la tâche plus difficile qu'elle ne le devrait en raison de la manière dont les rôles gèrent les attributs.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow