package dctpp;
$dctpp::VERSION = '0.01';
# ABSTRACT: Postprocessor of Devel::CallTrace output
use strict;
use warnings;
use Devel::CallTrace::PP;
use Getopt::Long::Descriptive;
my ( $opts, $usage ) = describe_options(
$0 . ' %o <filename_of_text_file_with_trace>',
[ 'hide_cpan=i', "hide modules published on CPAN", { default => 0 } ],
[ 'hide_core=i', "hide CORE modules", { default => 1 } ],
[
'hide_constants=i',
"hide constants (capital case only methods)",
{ default => 1 }
],
[ 'hide_lineno=i', "hide file and line number", { default => 0 } ],
[ 'just_uniq_modules=i', "print only unique modules", { default => 0 } ],
[ 'just_uniq_calls=i', "print only unique calls", { default => 0 } ],
[ 'rle|r=i', "fold same calls", { default => 1 } ],
[
'project_path|p=s',
"absolute path to project, for filtering external libs output"
],
[ 'verbose|v', "print extra stuff" ],
[ 'help', "print usage message and exit", { shortcircuit => 1 } ],
);
print( $usage->text ), exit if $opts->help;
Devel::CallTrace::PP->handler( $ARGV[0], $opts );
1;
__END__
=pod
=encoding UTF-8
=head1 NAME
dctpp - Postprocessor of Devel::CallTrace output
=head1 VERSION
version 0.01
=head1 USAGE
perl -d:CallTrace x.pl > /dev/null 2>trace.txt
perl -d:CallTrace x.pl > /dev/null | tee trace.txt
dctpp --just_uniq_modules 1 -v 1 --project-path /media/sf_Hub trace.txt > trace_processed.txt
perl -d:CallTrace x.pl > /dev/null | tee trace.txt | dctpp trace.txt | tee trace_processed.txt
=head1 AUTHOR
Pavel Serikov <pavelsr@cpan.org>
=head1 COPYRIGHT AND LICENSE
This software is copyright (c) 2019 by Pavel Serikov.
This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.
=cut