DhMakePerl

 view release on metacpan or  search on metacpan

lib/Debian/Control/Stanza/Binary.pm  view on Meta::CPAN


=head1 FIELDS

The supported fields for binary stanzas are listed below. For more information
about each field's meaning, consult the section named C<Source package control
files -- debian/control> of the Debian Policy Manual at
L<https://www.debian.org/doc/debian-policy/>

Note that real control fields may contain dashes in their names. These are
replaced with underscores.

=over

=item Package

=item Architecture

=item Section

=item Priority

=item Essential

=item Depends

=item Recommends

=item Suggests

=item Enhances

=item Replaces

=item Pre_Depends

=item Conflicts

=item Breaks

=item Provides

=item Description

=back

C<Depends>, C<Conflicts> C<Breaks>, C<Recommends>, C<Suggests>, C<Enhances>,
C<Replaces>, and C<Pre_Depends> fields are converted to objects of
L<Debian::Dependencies> class upon construction.

Two more accessor methods are provided for easier handling of package's short
and long description.

=over

=item short_description

=item long_description

=back

Setting them transparently modifies I<Description>. Note that the value of
I<long_description> is "unmangled", that is without leading spaces, and empty
lines are empty. I<Description> on the other hand is just as it looks in a
regular debian/control file - the long part is indented with a single space and
empty lines are replaced with dots.

=cut

package Debian::Control::Stanza::Binary;

use strict;
use warnings;

our $VERSION = '0.96';

use base 'Debian::Control::Stanza';

use constant fields => qw(
    Package Architecture Section Priority Essential Depends Recommends Suggests
    Enhances Replaces Pre_Depends Conflicts Breaks Provides Built_Using Description
    _short_description _long_description
);

=head1 CONSTRUCTOR

=over

=item new

=item new( { field => value, ... } )

Creates a new L<Debian::Control::Stanza::Binary> object and optionally
initializes it with the supplied data.

=back

=head1 SEE ALSO

Debian::Control::Stanza::Source inherits most of its functionality from
L<Debian::Control::Stanza>

=head1 COPYRIGHT & LICENSE

Copyright (C) 2009, 2010 Damyan Ivanov L<dmn@debian.org>

This program is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License version 2 as published by the Free
Software Foundation.

This program is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.

=cut

sub set {
    my ( $self, $field, @value ) = @_;

    my $res = $self->SUPER::set( $field, @value );

    # re-split description in it was set



( run in 2.721 seconds using v1.01-cache-2.11-cpan-39bf76dae61 )