NAME

OPM::Parser - Parser for the .opm file

VERSION

version 1.06

SYNOPSIS

use OPM::Parser;

my $opm_file = 'QuickMerge-3.3.2.opm';
my $opm      = OPM::Parser->new( opm_file => $opm_file );
$opm->parse or die "OPM parse failed: ", $opm->error_string;

say sprintf "This is version %s of package %s",
    $opm->version,
    $opm->name;

say "You can install it on those framework versions: ", join ", ", @{ $opm->framework };

say "Dependencies: ";
for my $dep ( @{ $opm->dependencies } ) {
    say sprintf "%s (%s) - (%s)", 
        $dep->{name},
        $dep->{version},
        $dep->{type};
}

METHODS

new

parse

Validates and parses the .opm file. It returns 1 on success and undef on error. If an error occurs, one can get the error message with error_string:

my $opm_file = 'QuickMerge-3.3.2.opm';
my $opm      = OPM::Parser->new( opm_file => $opm_file );
$opm->parse or die "OPM parse failed: ", $opm->error_string;

If you want to ignore validation result, you can pass ignore_validation => 1:

my $opm_file = 'QuickMerge-3.3.2.opm';
my $opm      = OPM::Parser->new( opm_file => $opm_file );
$opm->parse( ignore_validation => 1 )
    or die "OPM parse failed: ", $opm->error_string;

as_sopm

documentation

validate

ATTRIBUTES

  • opm_file

  • tree

  • framework

  • dependencies

  • files

  • error_string

  • description

  • license

  • url

  • vendor

  • version

  • name

AUTHOR

Renee Baecker <reneeb@cpan.org>

COPYRIGHT AND LICENSE

This software is Copyright (c) 2016 by Renee Baecker.

This is free software, licensed under:

The Artistic License 2.0 (GPL Compatible)