1 package Debvote::Rank; # assumes Some/Module.pm
7 use vars qw($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS);
9 # set the version for version checking
13 @EXPORT = qw(&func1 &func2 &func4);
14 %EXPORT_TAGS = ( ); # eg: TAG => [ qw!name1 name2! ],
16 # your exported package globals go here,
17 # as well as any optionally exported functions
18 @EXPORT_OK = qw($Var1 %Hashit &func3);
23 # non-exported package globals go here
24 use vars qw(@more $stuff);
26 # initialize package globals, first exported ones
30 # then the others (which are still accessible as
31 # $Some::Module::stuff)
35 # all file-scoped lexicals must be created before
36 # the functions below that use them.
38 # file-private lexicals go here
42 # here's a file-private function as a closure,
43 # callable as &$priv_func; it cannot be prototyped.
48 # make all your functions, whether exported or not;
49 # remember to put something interesting in the {} stubs
50 sub func1 {} # no prototype
51 sub func2() {} # proto'd void
52 sub func3($$) {} # proto'd to 2 scalars
54 # this one isn't exported, but could be called!
55 sub func4(\%) {} # proto'd to 1 hash ref
57 END { } # module clean-up code here (global destructor)