2010-08-21 2 views
4

다른 작은 역할로 구성된 편리한 무스 역할을 설정하고 싶습니다. 예를 들어, WithAddress 및 WithPhone이있는 경우 WithAddress 및 WithPhone과 향후 추가 할 연락 방법을 모두 제공하는 단일 WithContacts를 원합니다.역할의 무스 역할

무스로 어떻게 할 수 있습니까? 및«더 무스 :: 역할,»,«더 무스»없는 대신,

답변

9
package WithContacts; 

use Moose::Role; 
with qw(WithAddress WithPhone); 

# anything else your role should do 

no Moose::Role; 
1; 
+0

* Ker-DUH! * 모든 메소드가 정의 된 후에'no Moose :: Role'가 수행됩니까? – Schwern

+1

@Schwern, 보통 파일의 끝 바로 앞에'no Moose' 또는'no Moose :: Role'을 넣습니다. 나는 당신이'with '와'has'와'requires' 등으로 끝난 후에 어디든지 둘 수 있다고 생각하지만, 파일 끝은 가장 간단합니다. – cjm

+3

전혀 필요하지 않습니다. 그것은 단지 'has', 'with'등과 같은 다양한 설탕을 unimports합니다.'use namespace :: autoclean; '은 틀림없이 더 좋습니다 (이것에 대한 베스트 프랙티스는 아직 실제로 파악되지 않았습니다). – Ether

0

새로운 뜨거움은«사용 namepace :: 자동 청소»인 경우 더 CJS에서 듣고 싶어

: -)

+0

아,보세요. Ether 씨는 이미 그걸 가지고 있습니다. – cjac

관련 문제