Alien::Role − Extend Alien::Base with roles!
version 2.37
package
Alien::libfoo;
use base qw( Alien::Base );
use Role::Tiny::With qw( with );
with 'Alien::Role::Dino';
with 'Alien::Role::Alt';
1;
The "Alien::Role" namespace is intended for writing roles that can be applied to Alien::Base to extend its functionality. You could of course write subclasses that extend Alien::Base, but then you have to either stick with just one subclass or deal with multiple inheritance! It is recommended that you use Role::Tiny since it can be used on plain old Perl classes which is good since Alien::Base doesn’t use anything fancy like Moose or Moo. There are two working examples that use this technique that are worth checking out in the event you are interested: Alien::Role::Dino and Alien::Role::Alt.
This class itself doesn’t do anything, it just documents the technique.
Alien
Alien::Base
alienfile
Alien::Build
Alien::Role::Dino
Alien::Role::Alt
Author: Graham Ollis <plicease@cpan.org>
Contributors:
Diab Jerius ( DJERIUS )
Roy Storey ( KIWIROY )
Ilya Pavlov
David Mertens (run4flat)
Mark Nunberg (mordy, mnunberg)
Christian Walde (Mithaldu)
Brian Wightman (MidLifeXis)
Zaki Mughal (zmughal)
mohawk (mohawk2, ETJ )
Vikas N Kumar (vikasnkumar)
Flavio Poletti (polettix)
Salvador Fandiño (salva)
Gianni Ceccarelli (dakkar)
Pavel Shaydo (zwon, trinitum)
Kang-min Liu (å康æ°, gugod)
Nicholas Shipp (nshp)
Juan Julián Merelo Guervós ( JJ )
Joel Berger ( JBERGER )
Petr Pisar (ppisar)
Lance Wicks ( LANCEW )
Ahmad Fatoum (a3f, ATHREEF )
José JoaquÃn Atria ( JJATRIA )
Duke Leto ( LETO )
Shoichi Kaji ( SKAJI )
Shawn Laffan ( SLAFFAN )
Paul Evans (leonerd, PEVANS )
Håkon Hægland (hakonhagland, HAKONH )
This software is copyright (c) 2011−2020 by Graham Ollis.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.