Try exporting symbols from one package to another like Exporter for example.
The code below demonstrates a very simple exporting mechanism within the confines of strict
use strict;
use warnings;
use warnings::register;
use Symbol 'qualify_to_ref';
sub import {
my $cur = shift;
my $dest = caller;
for my $g (grep $cur->can($_), @_) {
warnings::warnif("sub '$g' already exists in $dest") and next
if $dest->can($g);
my($dest, $src) = map qualify_to_ref("$_\::$g"), $dest, $cur;
*$dest = *$src;
}
}
One might point out that the code in Symbol doesn't use strictures, but much of this could quite easily be done within its confines, however the code would necessarily be more verbose. If someone can find code that they believe can't be done within strictures then I shall quite happily rise to the occassion :)
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|