1898184e3Ssthen# subclass for testing TAP::Harness custom sources 2898184e3Ssthen 3898184e3Ssthenpackage MyFileSourceHandler; 4898184e3Ssthen 5898184e3Ssthenuse strict; 66fb12b70Safresh1use warnings; 76fb12b70Safresh1our ($LAST_OBJ, $CAN_HANDLE, $MAKE_ITER, $LAST_SOURCE); 8898184e3Ssthen 9898184e3Ssthenuse TAP::Parser::IteratorFactory; 10898184e3Ssthen 116fb12b70Safresh1use base qw( TAP::Parser::SourceHandler::File MyCustom ); 12898184e3Ssthen$LAST_OBJ = undef; 13898184e3Ssthen$CAN_HANDLE = undef; 14898184e3Ssthen$MAKE_ITER = undef; 15898184e3Ssthen$LAST_SOURCE = undef; 16898184e3Ssthen 17898184e3SsthenTAP::Parser::IteratorFactory->register_handler(__PACKAGE__); 18898184e3Ssthen 19898184e3Ssthensub can_handle { 20898184e3Ssthen my $class = shift; 21898184e3Ssthen $class->SUPER::can_handle(@_); 22898184e3Ssthen $CAN_HANDLE++; 23*5759b3d2Safresh1 return 1; 24898184e3Ssthen} 25898184e3Ssthen 26898184e3Ssthensub make_iterator { 27898184e3Ssthen my ( $class, $source ) = @_; 28898184e3Ssthen my $iter = $class->SUPER::make_iterator($source); 29898184e3Ssthen $MAKE_ITER++; 30898184e3Ssthen $LAST_SOURCE = $source; 31898184e3Ssthen return $iter; 32898184e3Ssthen} 33898184e3Ssthen 34898184e3Ssthen1; 35