../lib/CPANPLUS/Dist.pm

- NAME
- SYNOPSIS
- DESCRIPTION
- ACCESSORS
- STATUS ACCESSORS

- $dist = CPANPLUS::Dist->new( module => MODOBJ, [format => DIST_TYPE] );
- @dists = CPANPLUS::Dist->dist_types;
- prereq_satisfied( modobj => $modobj, version => $version_spec )
- _resolve_prereqs

# NAME

CPANPLUS::Dist

# SYNOPSIS

        my $dist = CPANPLUS::Dist->new(
                                    format  => 'build',
                                    module  => $modobj,
                                );

# DESCRIPTION

`CPANPLUS::Dist` is a base class for `CPANPLUS::Dist::MM` and `CPANPLUS::Dist::Build`. Developers of other `CPANPLUS::Dist::*` plugins should look at `CPANPLUS::Dist::Base`.

# ACCESSORS

`parent()`

  Returns the `CPANPLUS::Module` object that parented this object.

`status()`

  Returns the `Object::Accessor` object that keeps the status for this module.

# STATUS ACCESSORS

All accessors can be accessed as follows: $deb->status->ACCESSOR

`created()`

  Boolean indicating whether the dist was created successfully. Explicitly set to `0` when failed, so a value of `undef` may be interpreted as `not yet attempted`.

`installed()`

  Boolean indicating whether the dist was installed successfully. Explicitly set to `0` when failed, so a value of `undef` may be interpreted as `not yet attempted`.

`uninstalled()`

  Boolean indicating whether the dist was uninstalled successfully. Explicitly set to `0` when failed, so a value of `undef` may be interpreted as `not yet attempted`.

`dist()`

  The location of the final distribution. This may be a file or directory, depending on how your distribution plug in of choice works. This will be set upon a successful create.

## $dist = CPANPLUS::Dist->new( module => MODOBJ, [format => DIST_TYPE] );

Create a new `CPANPLUS::Dist` object based on the provided `MODOBJ`. The optional argument `format` is used to indicate what type of dist you would like to create (like `makemaker` for a `CPANPLUS::Dist::MM` object, `build` for a `CPANPLUS::Dist::Build` object, and so on ). If not provided, will default to the setting as specified by your config `dist_type`.

Returns a `CPANPLUS::Dist` object on success and false on failure.

## @dists = CPANPLUS::Dist->dist_types;

Returns a list of the CPANPLUS::Dist::* classes available

## prereq_satisfied( modobj => $modobj, version => $version_spec )

Returns true if this prereq is satisfied. Returns false if it's not. Also issues an error if it seems "unsatisfiable," i.e. if it can't be found on CPAN or the latest CPAN version doesn't satisfy it.

## _resolve_prereqs

Makes sure prerequisites are resolved

XXX Need docs, internal use only

../lib/CPANPLUS/Dist.pm