Man Linux: Main Page and Category List


       Dpkg::Control::Fields - manage (list of official) control fields


       The modules contains a list of fieldnames with associated meta-data
       explaining in which type of control information they are allowed. The
       types are the CTRL_* constants exported by Dpkg::Control.


       my $f = field_capitalize($field_name)
           Returns the field name properly capitalized. All characters are
           lowercase, except the first of each word (words are separated by a
           dash in field names).

           Returns true if the field is official and known.

       field_is_allowed_in($fname, @types)
           Returns true (1) if the field $fname is allowed in all the types
           listed in the list. Note that you can use type sets instead of
           individual types (ex: CTRL_FILE_CHANGES | CTRL_CHANGELOG).

           field_allowed_in(A|B, C) returns true only if the field is allowed
           in C and either A or B.

           Undef is returned for non-official fields.

       field_transfer_single($from, $to, $field)
           If appropriate, copy the value of the field named $field taken from
           the $from Dpkg::Control object to the $to Dpkg::Control object.

           Official fields are copied only if the field is allowed in both
           types of objects. Custom fields are treated in a specific manner.
           When the target is not among CTRL_PKG_SRC, CTRL_PKG_DEB or
           CTRL_FILE_CHANGES, then they are alway copied as is (the X- prefix
           is kept). Otherwise they are not copied except if the target object
           matches the target destination encoded in the field name. The
           initial X denoting custom fields can be followed by one or more
           letters among "S" (Source: corresponds to CTRL_PKG_SRC), "B"
           (Binary: corresponds to CTRL_PKG_DEB) or "C" (Changes: corresponds
           to CTRL_FILE_CHANGES).

           Returns undef if nothing has been copied or the name of the new
           field added to $to otherwise.

       field_transfer_all($from, $to)
           Transfer all appropriate fields from $from to $to. Calls
           field_transfer_single() on all fields available in $from.

           Returns the list of fields that have been added to $to.

           Returns an ordered list of fields for a given type of control
           information.  This list can be used to output the fields in a
           predictable order.  The list might be empty for types where the
           order does not matter much.

           List of fields that contains dependencies-like information in a
           source Debian package.

           List of fields that contains dependencies-like information in a
           binary Debian package. The fields that express real dependencies
           are sorted from the stronger to the weaker.

           Return the type of the dependency expressed by the given field. Can
           either be "normal" for a real dependency field (Pre-Depends,
           Depends, ...)  or "union" for other relation fields sharing the
           same syntax (Conflicts, Breaks, ...). Returns undef for fields
           which are not dependencies.

       field_register($field, $allowed_types, %opts)
           Register a new field as being allowed in control information of
           specified types. %opts is optional

       field_insert_after($type, $ref, @fields)
           Place field after another one ($ref) in output of control
           information of type $type.

       field_insert_before($type, $ref, @fields)
           Place field before another one ($ref) in output of control
           information of type $type.


       Raphal Hertzog <>.