]> git.vpit.fr Git - perl/modules/Test-Valgrind.git/blobdiff - lib/Test/Valgrind/Parser.pm
This is 1.17
[perl/modules/Test-Valgrind.git] / lib / Test / Valgrind / Parser.pm
index e4b68b6392bc93ac2c0d1e83d4b9812bd73ef7f7..3ae3a19605e9791f79c457a8dbb639a53aa549a9 100644 (file)
@@ -9,11 +9,11 @@ Test::Valgrind::Parser - Base class for Test::Valgrind parsers.
 
 =head1 VERSION
 
-Version 1.02
+Version 1.17
 
 =cut
 
-our $VERSION = '1.02';
+our $VERSION = '1.17';
 
 =head1 DESCRIPTION
 
@@ -21,24 +21,31 @@ This class is the base for L<Test::Valgrind> parsers.
 
 =cut
 
-use base qw/Test::Valgrind::Carp/;
+use base qw<Test::Valgrind::Component Test::Valgrind::Carp>;
 
 =head1 METHODS
 
 =head2 C<new>
 
-=cut
+    my $tvp = Test::Valgrind::Parser->new;
+
+The parser constructor, called without arguments.
+
+Defaults to L<Test::Valgrind::Component/new>.
+
+=head2 C<start>
+
+    $tvp->start($session);
+
+Called when the C<$session> starts.
 
-sub new {
- my $class = shift;
- $class = ref($class) || $class;
+Defaults to set L<Test::Valgrind::Component/started>.
 
- bless { }, $class;
-}
+=head2 C<args>
 
-=head2 C<args $session, $fh>
+    my @args = $tvp->args($session, $fh);
 
-Returns the list of parser-specific arguments that are to be passed to C<valgrind>.
+Returns the list of parser-specific arguments that are to be passed to the C<valgrind> process spawned by the session C<$session> and whose output will be captured by the filehandle C<$fh>.
 
 Defaults to the empty list.
 
@@ -46,7 +53,12 @@ Defaults to the empty list.
 
 sub args { }
 
-=head2 C<parse $session, $fh>
+=head2 C<parse>
+
+    my $aborted = $tvp->parse($session, $fh);
+
+Parses the output of the C<valgrind> process attached to the session C<$session> received through the filehandle C<$fh>.
+Returns true when the output indicates that C<valgrind> has aborted.
 
 This method must be implemented when subclassing.
 
@@ -54,9 +66,17 @@ This method must be implemented when subclassing.
 
 sub parse;
 
+=head2 C<finish>
+
+    $tvp->finish($session);
+
+Called when the C<$session> finishes.
+
+Defaults to clear L<Test::Valgrind::Component/started>.
+
 =head1 SEE ALSO
 
-L<Test::Valgrind>, L<Test::Valgrind::Session>.
+L<Test::Valgrind>, L<Test::Valgrind::Component>, L<Test::Valgrind::Session>.
 
 =head1 AUTHOR
 
@@ -77,7 +97,7 @@ You can find documentation for this module with the perldoc command.
 
 =head1 COPYRIGHT & LICENSE
 
-Copyright 2009 Vincent Pit, all rights reserved.
+Copyright 2009,2010,2011,2013,2015 Vincent Pit, all rights reserved.
 
 This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.