1TAP::Parser::Iterator::PPreorclesPsr(o3gprma)mmers RefeTrAePn:c:ePaGrusiedre::Iterator::Process(3pm)
2
3
4
6 TAP::Parser::Iterator::Process - Internal TAP::Parser Iterator
7
9 Version 3.17
10
12 # see TAP::Parser::IteratorFactory for preferred usage
13
14 # to use directly:
15 use TAP::Parser::Iterator::Process;
16 my %args = (
17 command => ['python', 'setup.py', 'test'],
18 merge => 1,
19 setup => sub { ... },
20 teardown => sub { ... },
21 );
22 my $it = TAP::Parser::Iterator::Process->new(\%args);
23 my $line = $it->next;
24
26 This is a simple iterator wrapper for executing external processes,
27 used by TAP::Parser. Unless you're subclassing, you probably won't
28 need to use this module directly.
29
31 Class Methods
32 "new"
33
34 Create an iterator. Expects one argument containing a hashref of the
35 form:
36
37 command => \@command_to_execute
38 merge => $attempt_merge_stderr_and_stdout?
39 setup => $callback_to_setup_command
40 teardown => $callback_to_teardown_command
41
42 Tries to uses IPC::Open3 & IO::Select to communicate with the spawned
43 process if they are available. Falls back onto "open()".
44
45 Instance Methods
46 "next"
47
48 Iterate through the process output, of course.
49
50 "next_raw"
51
52 Iterate raw input without applying any fixes for quirky input syntax.
53
54 "wait"
55
56 Get the wait status for this iterator's process.
57
58 "exit"
59
60 Get the exit status for this iterator's process.
61
62 "handle_unicode"
63
64 Upgrade the input stream to handle UTF8.
65
66 "get_select_handles"
67
68 Return a list of filehandles that may be used upstream in a select()
69 call to signal that this Iterator is ready. Iterators that are not
70 handle based should return an empty list.
71
73 Originally ripped off from Test::Harness.
74
76 TAP::Object, TAP::Parser, TAP::Parser::Iterator,
77 TAP::Parser::IteratorFactory,
78
79
80
81perl v5.12.4 2011-06-07TAP::Parser::Iterator::Process(3pm)