Beefy Boxes and Bandwidth Generously Provided by pair Networks
good chemistry is complicated,
and a little bit messy -LW
 
PerlMonks  

Re^2: require "shared.pl" with use strict;

by DizietSma (Initiate)
on Feb 19, 2015 at 17:05 UTC ( [id://1117242]=note: print w/replies, xml ) Need Help??


in reply to Re: require "shared.pl" with use strict;
in thread require "shared.pl" with use strict;

Link updated.
What is the best way to import values from a shared file?

Replies are listed 'Best First'.
Re^3: require "shared.pl" with use strict;
by choroba (Cardinal) on Feb 19, 2015 at 17:27 UTC
    No, you should use [id://NUMBER] to link to other nodes. See What shortcuts can I use for linking to other information?.

    The preferred thing to export from a module is a subroutine. Or, alternatively, you can switch to the object oriented approach.

    Shared.pm:

    package Shared; use warnings; use strict; use Exporter qw{ import }; our @EXPORT_OK = qw{ test_val test_list }; sub test_val { "hello world\n" } sub test_list { ( [ 'Shadow', 'Blinky' ], [ 'Speedy', 'Pinky' ], [ 'Bashful', 'Inky' ], [ 'Pokey', 'Clyde' ], ) } __PACKAGE__

    test.pl:

    #!/usr/bin/perl use warnings; use strict; use Shared qw{ test_val test_list }; print test_val(); for my $pair (test_list()) { print "@$pair\n"; }

    Object oriented

    Shared_OO.pm:
    package Shared_OO; use warnings; use strict; sub new { my $class = shift; bless { test_val => "hello world\n", test_list => [ [ 'Shadow', 'Blinky' ], [ 'Speedy', 'Pinky' ], [ 'Bashful', 'Inky' ], [ 'Pokey', 'Clyde' ], ], }, $class } sub test_val { shift()->{test_val} } sub test_list { @{ shift()->{test_list} } } __PACKAGE__

    test_oo.pl:

    #!/usr/bin/perl use warnings; use strict; use Shared_OO; my $o = 'Shared_OO'->new; print $o->test_val; for my $pair ($o->test_list) { print "@$pair\n"; }
    لսႽ† ᥲᥒ⚪⟊Ⴙᘓᖇ Ꮅᘓᖇ⎱ Ⴙᥲ𝇋ƙᘓᖇ

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://1117242]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others examining the Monastery: (5)
As of 2024-03-29 00:01 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found