NAME

VCP::Filter - A base class for filters


SYNOPSIS

   use VCP::Filter;
   @ISA = qw( VCP::Filter );
   ...


DESCRIPTION

A VPC::Filter is a VCP::Plugin that is placed between the source and the destination and allows the stream of revisions to be altered.

For instance, the Map: option in vcp files is implemented by VCP::Filter::Map

By default a filter is a pass-through.


SUBCLASSING

This class uses the fields pragma, so you'll need to use base and possibly fields in any subclasses.

parse_rules_list

Used in VCP::Filter::*map and VCP::Filter::*edit to parse lists of rules where every rule is a set of N "words". The value of N is computed from the number of labels passed in and the labels are used when printing an error message:
    @rules = $self->parse_rules( $options, "Pattern", "Replacement" );

filter_name

Returns the StudlyCaps version of the filter name. By default, assumes a single work name and uses ucfirst on it. Filters like StringEdit should overload this to be more creative and typgraphically appealing (heh).

sort_keys

   my @output_sort_order = $filter->sort_keys( @input_sort_order );

Accepts a list of sort keys from the upstream filter and returns a list of sort keys representing the order that records will be emitted in.

This is a pass-through by default, but VCP::Filter::sort and VCP::Filter::changesets return appropriate values.

config_file_section_as_string
last_rev_in_filebranch

(passthru; see VCP::Dest)

backfill

(passthru; see VCP::Dest)

handle_header

(passthru)

rev_count

passthru, see VCP::Dest.

handle_rev

passthru, see VCP::Dest.

skip_rev

passthru, see VCP::Dest

handle_footer

passthru, see VCP::Dest


COPYRIGHT

Copyright 2000, Perforce Software, Inc. All Rights Reserved.

This module and the VCP package are licensed according to the terms given in the file LICENSE accompanying this distribution, a copy of which is included in vcp.


AUTHOR

Barrie Slaymaker <barries@slaysys.com>


Last updated: Fri Jun 4 14:21:30 2004