1# subclass for testing subclassing 2 3package TAP::Parser::SubclassTest; 4 5use strict; 6use vars qw(@ISA); 7 8use TAP::Parser; 9 10use MyCustom; 11use MySource; 12use MyPerlSource; 13use MyGrammar; 14use MyIteratorFactory; 15use MyResultFactory; 16 17@ISA = qw( TAP::Parser MyCustom ); 18 19sub _default_source_class {'MySource'} 20sub _default_perl_source_class {'MyPerlSource'} 21sub _default_grammar_class {'MyGrammar'} 22sub _default_iterator_factory_class {'MyIteratorFactory'} 23sub _default_result_factory_class {'MyResultFactory'} 24 25sub make_source { shift->SUPER::make_source(@_)->custom } 26sub make_perl_source { shift->SUPER::make_perl_source(@_)->custom } 27sub make_grammar { shift->SUPER::make_grammar(@_)->custom } 28sub make_iterator { shift->SUPER::make_iterator(@_)->custom } 29sub make_result { shift->SUPER::make_result(@_)->custom } 30 31sub _initialize { 32 my $self = shift; 33 $self->SUPER::_initialize(@_); 34 $main::INIT{ ref($self) }++; 35 $self->{initialized} = 1; 36 return $self; 37} 38 391; 40