package gadget;
use vars qw($VERSION $CLASS);
$CLASS = __PACKAGE__;
$VERSION = "0.01";
#Generic method, it can (in theory ;-) return an instance of any subclass
sub new {
#do initialization stuff
}
sub parse_tag {
my ($twig,$elem) = @_;
#do stuff
}
####
package test;
use gadget;
use vars qw($VERSION $CLASS);
$CLASS = __PACKAGE__;
$VERSION = "0.01";
BEGIN {
@test::ISA = qw(gadget);
@test::ISA = qw(Exporter);
@test::EXPORT = qw(parse_tag);
}
sub new {
my $class = shift || $CLASS;
my $obj = $class->SUPER::new($class);
$obj->{test_attr} = "atributo de prueba";
return($obj);
}
sub test_stuff {
my $self = shift;
foreach my $a (@_){
print "($self) ARGUMENTO: $a\n";
}
}
####
require "test.pm";
$twigroots->{test} = \&{test::parse_tag};