This is an automated email from the git hooks/post-receive script. kanashiro-guest pushed a commit to branch master in repository carton.
commit eacd7dc8a4d80c3bfacfd0c5e7b15bbfac4d8788 Author: Tatsuhiko Miyagawa <miyag...@bulknews.net> Date: Mon Jun 3 23:57:08 2013 +0900 rewrite dumper code --- lib/Carton/CLI.pm | 38 +++++++++++++++++++++----------------- 1 file changed, 21 insertions(+), 17 deletions(-) diff --git a/lib/Carton/CLI.pm b/lib/Carton/CLI.pm index 2f4d671..10dfcd9 100644 --- a/lib/Carton/CLI.pm +++ b/lib/Carton/CLI.pm @@ -264,29 +264,33 @@ sub cmd_tree { my $cpanfile = Module::CPANfile->load($self->find_cpanfile); my $prereqs = $cpanfile->prereqs; - my $level = 0; - $self->dump_tree($lock, undef, $prereqs, $level); + my $dumper = $self->_make_dumper($lock); + $dumper->(undef, $prereqs, 0); } -sub dump_tree { - my($self, $lock, $name, $prereqs, $level) = @_; +sub _make_dumper { + my($self, $lock) = @_; - my $req = CPAN::Meta::Requirements->new; - $req->add_requirements($prereqs->requirements_for($_, 'requires')) - for qw( configure build runtime test); + my $dumper; $dumper = sub { + my($name, $prereqs, $level) = @_; - if ($name) { - $self->print( (" " x ($level - 1)) . "$name\n" ); - } + my $req = CPAN::Meta::Requirements->new; + $req->add_requirements($prereqs->requirements_for($_, 'requires')) + for qw( configure build runtime test); - my $requirements = $req->as_string_hash; - while (my($module, $version) = each %$requirements) { - if (my $dependency = $lock->find($module)) { - $self->dump_tree($lock, $dependency->dist, $dependency->prereqs, $level + 1); - } else { - # TODO: probably core, what if otherwise? + if ($name) { + $self->print( (" " x ($level - 1)) . "$name\n" ); } - } + + my $requirements = $req->as_string_hash; + while (my($module, $version) = each %$requirements) { + if (my $dependency = $lock->find($module)) { + $dumper->($dependency->dist, $dependency->prereqs, $level + 1); + } else { + # TODO: probably core, what if otherwise? + } + } + }; } sub cmd_check { -- Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-perl/packages/carton.git _______________________________________________ Pkg-perl-cvs-commits mailing list Pkg-perl-cvs-commits@lists.alioth.debian.org http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-perl-cvs-commits