# CPAN::Plugin - Base class for CPAN shell extensions - perldoc - [phpMan]

## NAME
    [CPAN::Plugin](https://www.chedong.com/phpMan.php/perldoc/CPAN%3A%3APlugin/markdown) - Base class for CPAN shell extensions

## SYNOPSIS
       package [CPAN::Plugin::Flurb](https://www.chedong.com/phpMan.php/perldoc/CPAN%3A%3APlugin%3A%3AFlurb/markdown);
       use parent '[CPAN::Plugin](https://www.chedong.com/phpMan.php/perldoc/CPAN%3A%3APlugin/markdown)';

       sub post_test {
         my ($self, $distribution_object) = @_;
         $self = $self->new (distribution_object => $distribution_object);
         ...;
       }

## DESCRIPTION
### Alpha Status
    The plugin system in the CPAN shell was introduced in version 2.07 and is still considered
    experimental.

  How Plugins work?
    See "Plugin support" in CPAN.

## METHODS
  plugin_requires
    returns list of packages given plugin requires for functionality. This list is evaluated using
    "CPAN->use_inst" method.

  distribution_object
    Get current distribution object.

  distribution
  distribution_info
  build_dir
    Simple delegatees for misc parameters derived from distribution

  is_xs
    Predicate to detect whether package contains XS.

## AUTHOR
    Branislav Zahradnik <<barney@cpan.org>>

