Nicholas Bamber

NAME

Debian::Copyright::Stanza::OrSeparated - 'or' separated field abstraction

VERSION

This document describes Debian::Copyright::Stanza::OrSeparated version 0.2 .

SYNOPSIS

    my $f = Debian::Copyright::Stanza::OrSeparated->new('Artistic');
    $f->add('GPL-1+ or BSD');
    print $f->as_string;
        # 'Artistic or GPL-1+ or BSD'
    print "$f";     # the same
    $f->sort;

DESCRIPTION

Debian::Copyright::Stanza::OrSeparated abstracts handling of the License fields in Files blocks, which are lists separated by 'or'. It also supports a body field representing the optional extended description of a License field.

CONSTRUCTOR

new (initial values)

The initial values list is parsed and may contain strings that are in fact 'or'-separated lists. These are split appropriately using Text::ParseWords' quotewords routine.

METHODS

as_string

Returns text representation of the list. A simple join of the elements by or . The same function is used for overloading the stringification operation.

equals

Natural implementation of the equality function.

add @items

Adds the given items to the list. Items that are already present are not added, keeping the list unique.

sort

A handy method for sorting the list.

COPYRIGHT & LICENSE

Copyright (C) 2011-12 Nicholas Bamber nicholas@periapt.co.uk

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.