TAP::Parser::SourceHandler::Handle - 从 IO::Handle 或 GLOB 流式传输 TAP。
版本 3.44
use TAP::Parser::Source;
use TAP::Parser::SourceHandler::Executable;
my $source = TAP::Parser::Source->new->raw( \*TAP_FILE );
$source->assemble_meta;
my $class = 'TAP::Parser::SourceHandler::Handle';
my $vote = $class->can_handle( $source );
my $iter = $class->make_iterator( $source );
这是一个 存储在 IO Handle 中的原始 TAP TAP::Parser::SourceHandler 类。它有两个任务
1. 确定它所给定的 TAP::Parser::Source 是否是包含原始 TAP 输出的 IO::Handle 或 GLOB ("can_handle")。
2. 为 IO::Handle 和 glob 创建迭代器 ("make_iterator")。
除非您正在编写插件或对 TAP::Parser 进行子类化,否则您可能不需要直接使用此模块。
can_handle
my $vote = $class->can_handle( $source );
投出以下投票
0.9 if $source is an IO::Handle
0.8 if $source is a glob
make_iterator
my $iterator = $class->make_iterator( $source );
返回一个新的 TAP::Parser::Iterator::Stream 用于源代码。
iterator_class
要使用的迭代器类,如果您是子类,请覆盖它。默认值为 TAP::Parser::Iterator::Stream。
请参阅 "TAP::Parser 中的子类化" 以获取子类化概述。
TAP::Object, TAP::Parser, TAP::Parser::Iterator, TAP::Parser::Iterator::Stream, TAP::Parser::IteratorFactory, TAP::Parser::SourceHandler, TAP::Parser::SourceHandler::Executable, TAP::Parser::SourceHandler::Perl, TAP::Parser::SourceHandler::File, TAP::Parser::SourceHandler::RawTAP