NAME

Parse::AFP - IBM Advanced Function Printing Parser

VERSION

This document describes version 0.10 of Parse::AFP, released September 21, 2004.

SYNOPSIS

    use Parse::AFP;
    my $afp = Parse::AFP->new('input.afp');
    while (my $rec = $afp->next_member) {
	print $rec->dump;
	# ...
	$rec->refresh; # if modified
    }
    $afp->refresh; # if modified
    $afp->write('output.afp');

DESCRIPTION

This module processes IBM's AFP (Advanced Function Printing) files into an object hierarchy; each object may be individually modified, dumped into binary, or written back to another AFP file.

Running the bundled afpdump.pl on a AFP file will probably explain this module's behaviour better than reading the documentation.

METHODS

Methods below applies to all objects in the objects hierarchy.

new

Constructor. Takes either a filename, or a scalar reference to content.

dump

Returns the binary representation of the current object.

write

Takes a filename and writes the binary representation to it.

refresh

Regenerate binary representation from in-memory data from the object itself and its members. Also refreshes all uplevel parents.

members

Returns a list of member objects, if any.

next_member

Iterator for member objects.

parent

Returns the parent of this object, or undef if this is the toplevel object.

ACCESSORS

Each class may define additional accessors, in the form of FieldName and SetFieldName. There are no accessors for the toplevel Parse::AFP object.

AUTHORS

Autrijus Tang <autrijus@autrijus.org>

COPYRIGHT

Copyright 2004 by Autrijus Tang <autrijus@autrijus.org>.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

See http://www.perl.com/perl/misc/Artistic.html