Load and interpret a bundle
Perl
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
examples
layout
lib/Dist/Zilla/Util
maint
misc
t
vendor/bin
.gitignore
.mailmap
.perltidyrc
.travis.yml
CONTRIBUTING.pod
Changes
INSTALL.SKIP
LICENSE
Makefile.PL
README.mkdn
cpanfile
cpanfile.snapshot
dist.ini
dist.ini.meta
perlcritic.rc
weaver.ini

README.mkdn

NAME

Dist::Zilla::Util::BundleInfo - Load and interpret a bundle

VERSION

version 1.001005

SYNOPSIS

use Dist::Zilla::Util::BundleInfo;

# [@RJBS]
# -myparam = foo
# param = bar
# param = quux
#
my $info = Dist::Zilla::Util::BundleInfo->new(
  bundle_name => '@RJBS',
  bundle_payload => [
    '-myparam' => 'foo',
    'param'    => 'bar',
    'param'    => 'quux'
  ]
);
for my $plugin ( $info->plugins ) {
  print $plugin->to_dist_ini; # emit each plugin in order in dist.ini format.
}

METHODS

plugins

Returns a list of ::BundleInfo::Plugin instances representing the configuration data for each section returned by the bundle.

ATTRIBUTES

bundle_name

The name of the bundle to get info from

->new( bundle_name => '@RJBS' )
->new( bundle_name => 'Dist::Zilla::PluginBundle::RJBS' )

bundle_dz_name

The name to pass to the bundle in the name parameter.

This is synonymous to the value of Foo in

[@Bundle / Foo]

bundle_payload

The parameter list to pass to the bundle.

This is synonymous with the properties passed in dist.ini

{
  foo => 'bar',
  quux => 'do',
  multivalue => [ 'a' , 'b', 'c' ]
}

==

[
  'foo' => 'bar',
  'quux' => 'do',
  'multivalue' => 'a',
  'multivalue' => 'b',
  'multivalue' => 'c',
]

==

foo = bar
quux = do
multivalue = a
multivalue = b
multivalue = c

PRIVATE FUNCTIONS

_coerce_bundle_name

_coerce_bundle_name('@Foo') # Dist::Zilla::PluginBundle::Foo

_isa_bundle

_isa_bundle('Foo::Bar::Baz') # fatals if Foo::Bar::Baz can't do ->bundle_config

AUTHOR

Kent Fredric <kentnl@cpan.org>

COPYRIGHT AND LICENSE

This software is copyright (c) 2015 by Kent Fredric <kentfredric@gmail.com>.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.