---
name: "Debian::Control::Stanza::CommaSeparated"
section: "3pm"
platform: "linux"
package: "libdebian-source-perl"
version: "0.128"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Debian::Control::Stanza::CommaSeparated"
---

# Debian::Control::Stanza::CommaSeparated(3pm)

comma separated debian/control field abstraction

## NAME

Debian::Control::Stanza::CommaSeparated - comma separated debian/control field abstraction

## SYNOPSIS

```
    my $f = Debian::Control::Stanza::CommaSeparated->new(
        'Joe M <joem@there.not>');
    $f->add('"Smith, Agent" <asmith@hasyou.not>, Joe M <joem@there.not>');
    print $f->as_string;
        # 'Joe M <joem@there.not>, "Smith, Agent" <asmith@hasyou.not>'
    print "$f";     # the same
    $f->sort;
```

## DESCRIPTION

Debian::Control::Stanza::CommaSeparated abstracts handling of comma-separated list of values, often found in *debian/control* file fields like *Uploaders*. Note that the various dependency fields in *debian/control* also use comma-separated values, but the Debian::Dependencies class is more suitable for these as it is for example also capable of finding overlapping dependency declarations.

## CONSTRUCTOR

- new (initial values)

  The initial values list is parsed and may contain strings that are in fact comma-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 `", "`.

  The same function is used for overloading the stringification operation.

- 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.
