NAME¶
Alt::Assert - Assert alternate module implementation
SYNOPSIS¶
Assuming there is a CPAN module Foo::Bar and mst wants to write an ALTernate
called Alt::Foo::Bar::MSTROUT.
In mst's Foo::Bar, there is the following line:
use constant ALT => 'MSTROUT';
In the alt module:
package Alt::Foo::Bar::MSTROUT;
use Alt::Assert; # imports assert()
1;
Users use mst's Foo::Bar as normal, just like they would use the original
Foo::Bar:
use Foo::Bar -various => [qw(weird import)], {API=>'things'};
or:
require Foo::Bar;
If they want to assert they have the mst version, they can:
use Foo::Bar -various => [qw(weird import)], {API=>'things'};
use Alt::Foo::Bar::MSTROUT;
or:
require Foo::Bar;
require Alt::Foo::Bar::MSTROUT;
Alt::Foo::Bar::MSTROUT->assert;
DESCRIPTION¶
Alt::Assert can be used to assert that the loaded module is the wanted alternate
implementation. Using the Synopsis' example, there can be different Foo::Bar
installed, either from the original distribution, or from one of the alternate
ones. Each alternate might be slightly incompatible with the original. The
existence of Alt::Foo::Bar::MSTROUT in the installation does not necessarily
ensure that the installed Foo::Bar is from the same alternate distribution,
since an installer can replace Foo::Bar from another distribution. That is why
one might need to do this assertion.
SEE ALSO¶
- •
- Alt
AUTHOR¶
Ingy doet Net <ingy@cpan.org>
COPYRIGHT¶
Copyright 2012-2014. Ingy doet Net.
See <
http://www.perl.com/perl/misc/Artistic.html>