Arch::Changeset(3pm) | User Contributed Perl Documentation | Arch::Changeset(3pm) |
Arch::Changeset - class representing Arch changeset
Arch::Changeset objects may be created directly if you got a changeset directory:
use Arch::Changeset; my $changeset = Arch::Changeset->new( 'migo@homemail.com--Perl-GPL/arch-perl--devel--0--patch-6', '/tmp/,,changeset-6', );
But often are created indirectly by other objects:
use Arch::Session; $changeset = Arch::Session->new->get_revision_changeset( 'migo@homemail.com--Perl-GPL/arch-perl--devel--0--patch-6' ); use Arch::Library; $changeset = Arch::Library->new->get_revision_changeset( 'migo@homemail.com--Perl-GPL/arch-perl--devel--0--patch-6' ); print scalar $changeset->get_patch("perllib/Arch/Changeset.pm"); my $diff_file = ($changeset->get_patch("README", 1))[2]; print Arch::Util::load_file($diff_file);
This class represents the changeset concept in Arch and provides some useful methods.
The following methods are available:
new, get_patch, get_index, get_changes, get_all_diffs, join_all_diffs, ancestor.
type is integer: 0 (unknown, try to autodetect, this is the default), 1 (modified file, or metadata change), 2 (new file), 3 (removed file).
The default behaviour is to create a fake diff against /dev/null for non-binary new and removed files; the full-file-asis flag, if set to true, changes this behaviour and causes to return the content of such file as-is. Binary new and removed files are always returned as-is regardless of the flag. This flag is also ignored if type is 1.
In the scalar content return the patch in diff(1) format (or the whole file content as described above). In the list content return 4 scalars: the patch, the file name on the disk containing this patch (or the whole file), the change type (that is "patch", "new" or "removed") and the as-is flag.
The returned values that follow the first one (the patch/file content) share the order of the corresponding parameters; the parameters are more hints, while the returned values accurately describe the content.
Valid names are 'orig-dirs-index', 'orig-files-index', 'mod-dirs-index' and 'mod-files-index'.
Awaiting for your reports.
Mikhael Goikhman (migo@homemail.com--Perl-GPL/arch-perl--devel).
For more information, see tla, Arch::Session, Arch::Library, Arch::Util.
2006-04-15 | perl v5.20.2 |